Communitygithub.com

Jamie-BitFlight/enterprise-installanywhere

Padrões de consulta Dasel v3 para definições de instalador InstallAnywhere .iap_xml — use ao consultar sequências de ações, descobrir variáveis, resolver condições de plataforma, navegar por painéis ou comparar variantes de instalador. Arquivos têm 2,5+ MB e 65.000+ linhas — grandes demais para leitura em contexto, exigem consultas estruturais com Dasel.

O que é enterprise-installanywhere?

Este skill define padrões de consulta Dasel v3 específicos para arquivos `.iap_xml` do InstallAnywhere, um formato de definição de instalador corporativo comum em ambientes empresariais. Como esses arquivos são extremamente grandes (2,5–2,6 MB, mais de 65.000 linhas), a leitura direta no contexto de um LLM é inviável; o skill fornece consultas estruturais que permitem extrair informações sem sobrecarregar o contexto. Ele suporta análise de sequências de ações, descoberta de variáveis, condições de plataforma (Windows vs. Linux), operações de cópia de arquivos, navegação de painéis e comparação entre variantes do instalador (como builds RA vs. NON_RA). Todas as consultas utilizam o comando `dasel` com a flag `-i xml` para evitar falhas de detecção automática, e gravam resultados intermediários em `/tmp/` para não poluir a árvore de origem. O skill é ideal para desenvolvedores que precisam auditar, comparar ou depurar instaladores complexos sem precisar carregar o arquivo inteiro no contexto do agente de IA.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Jamie-BitFlight/claude_skills/tree/main/plugins/dasel/skills/enterprise-installanywhere

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Padrões de Consulta para InstallAnywhere .iap_xml

<when_to_use>

Carregue este skill ao trabalhar com qualquer arquivo .iap_xml — auditar ações de instalação, listar operações de cópia de arquivos, descobrir variáveis, encontrar ramificações específicas de plataforma ou comparar duas variantes de instalador (ex.: builds RA vs NON_RA).

</when_to_use>

Restrições Operacionais

  • Sempre use -i xml explicitamente — a detecção automática falha em extensões .iap_xml
  • Grave todos os resultados intermediários em /tmp/ — nunca na árvore de origem
  • Arquivos têm 2,5–2,6 MB, 65.000+ linhas — use consultas estruturais com dasel, nunca leia o arquivo para o contexto

Estrutura Raiz

Arquivos .iap_xml do InstallAnywhere têm um caminho raiz fixo: InstallAnywhere.project.

# Nomes dos elementos de nível superior na raiz do documento
cat installer.iap_xml | dasel -i xml 'keys($this)'

# Navegar para a sequência de ações de instalação
cat installer.iap_xml | dasel -i xml 'InstallAnywhere.project.installSequence'

# Filhos do nó do projeto
cat installer.iap_xml | dasel -i xml 'InstallAnywhere.project.keys($this)'

Descida recursiva — encontra elementos em qualquer profundidade sem conhecer o caminho completo:

# Todos os elementos chamados "action" em qualquer profundidade
cat installer.iap_xml | dasel -i xml '..action'

# Todos os elementos chamados "panel" em qualquer profundidade
cat installer.iap_xml | dasel -i xml '..panel'

# Qualquer nó em qualquer profundidade onde um atributo específico exista
cat installer.iap_xml | dasel -i xml 'search(has("-name"))'

..elementName desce recursivamente. search(predicate) encontra nós em qualquer profundidade.

Análise de Sequência de Ações

# Todos os nomes de ações em ordem de execução
cat installer.iap_xml | dasel -i xml '..action.map("-name")'

# Todos os tipos de ação
cat installer.iap_xml | dasel -i xml '..action.map("-type")'

# Contar todos os elementos de ação
cat installer.iap_xml | dasel -i xml 'len(..action)'

# Gravar para análise
cat installer.iap_xml | dasel -i xml '..action.map("-name")' > /tmp/action_names.txt
cat installer.iap_xml | dasel -i xml '..action.map("-type")' > /tmp/action_types.txt

Descoberta de Variáveis

# Todas as definições de variáveis
cat installer.iap_xml | dasel -i xml '..variable.map("-name")' > /tmp/installer_vars.txt

Condições de Plataforma

# Todas as condições de plataforma (ramificações Windows vs Linux)
cat installer.iap_xml | dasel -i xml 'search(has("-platform")).map("-platform")' > /tmp/platforms.txt

Comparação entre Variantes

Ao comparar duas builds do mesmo instalador (ex.: RA vs NON_RA, variante Windows vs Linux):

# Comparar conjuntos de ações entre dois arquivos de instalador
cat installer_a.iap_xml | dasel -i xml '..action.map("-name")' | sort > /tmp/actions_a.txt
cat installer_b.iap_xml | dasel -i xml '..action.map("-name")' | sort > /tmp/actions_b.txt
diff /tmp/actions_a.txt /tmp/actions_b.txt > /tmp/installer_diff.txt

# Comparar conjuntos de painéis
cat installer_a.iap_xml | dasel -i xml '..panel.map("-name")' | sort > /tmp/panels_a.txt
cat installer_b.iap_xml | dasel -i xml '..panel.map("-name")' | sort > /tmp/panels_b.txt
diff /tmp/panels_a.txt /tmp/panels_b.txt

Operações de Cópia de Arquivos

# Todas as origens de cópia de arquivos
cat installer.iap_xml | dasel -i xml '..installFile.map("-source")' > /tmp/file_copies.txt

Navegação de Painéis

# Nomes e contagem de painéis
cat installer.iap_xml | dasel -i xml '..panel.map("-name")'
cat installer.iap_xml | dasel -i xml 'len(..panel)'

Referência de Sintaxe de Atributos

Atributos XML usam o prefixo - no modo amigável do dasel:

# Acessar atributo específico na primeira correspondência
cat installer.iap_xml | dasel -i xml '..action[0].-name'

# Descobrir atributos e filhos de um nó
cat installer.iap_xml | dasel -i xml '..action[0].keys($this)'

# Extrair valores de atributos em todos os nós correspondentes
cat installer.iap_xml | dasel -i xml '..elementName.map("-attributeName")'

# Contar elementos correspondentes
cat installer.iap_xml | dasel -i xml 'len(..elementName)'

# Pesquisar com predicado de atributo em qualquer profundidade
cat installer.iap_xml | dasel -i xml 'search(has("-attributeName"))'

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Jamie-BitFlight/agentskill-kaizen-meta-docs

Agentskill kaizen plugin documentation index. Load when needing to read about cross-platform notes, improvement plans, or DuckDB integration.

Jamie-BitFlight/bash-51-features

Bash 5.1 release features and improvements with practical examples. Use when working with Bash 5.1 features, epoch time variables, redirection enhancements, or when user asks about Bash 5.1 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-52-features

Bash 5.2 release features and improvements with practical examples. Use when working with Bash 5.2 features, variable handling enhancements, readline improvements, or when user asks about Bash 5.2 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-53-features

Bash 5.3 release features and improvements with practical examples. Use when working with Bash 5.3 features, new command substitution, GLOBSORT, loadable builtins, or when user asks about Bash 5.3 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-development

This skill should be used when the user asks to "write a bash script", "create a shell script", "implement bash function", "parse arguments in bash", "handle errors in bash", or mentions bash development, shell scripting, script templates, or modern bash patterns.

Jamie-BitFlight/bash-lint

This skill should be used when the user asks to "lint bash script", "run shellcheck", "format shell script", "use shfmt", "fix shellcheck errors", or mentions shell script linting, formatting, code quality, or pre-commit hooks for bash.

Jamie-BitFlight/bash-logging

This skill should be used when the user asks to "add logging to bash script", "colorize output", "implement log levels", "CI/CD sections", "terminal colors in bash", or mentions logging functions, emoji output, collapsible CI sections, or shlocksmith.

Jamie-BitFlight/bash-portability

This skill should be used when the user asks about "POSIX compatibility", "portable shell scripts", "cross-shell compatibility", "bashisms", "shebang selection", or mentions writing scripts that work on different shells (bash, sh, dash, zsh) or different systems.

Jamie-BitFlight/bash-testing

This skill should be used when the user asks to "test bash script", "write shell tests", "use shunit2", "use shellspec", "create test suite for bash", or mentions unit testing, test frameworks, mocking, or test-driven development for shell scripts.

Jamie-BitFlight/brainstorming-skill

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or when users request help with ideation, marketing, and strategic planning. Explores user intent, requirements, and design before implementation using research-validated prompt patterns.

Jamie-BitFlight/clang-format

Configure clang-format code formatting. Use when: user mentions clang-format or .clang-format, analyzing code style/patterns, creating/modifying formatting config, troubleshooting formatting, brace styles/indentation/spacing/alignment/pointer alignment, or codifying conventions.

Jamie-BitFlight/commitlint

When setting up commit message validation for a project. When project has commitlint.config.js or .commitlintrc files. When configuring CI/CD to enforce commit format. When extracting commit rules for LLM prompt generation. When debugging commit message rejection errors.

Jamie-BitFlight/conventional-commits

When writing a git commit message. When task completes and changes need committing. When project uses semantic-release, commitizen, git-cliff. When choosing between feat/fix/chore/docs types. When indicating breaking changes. When generating changelogs from commit history.

Jamie-BitFlight/dasel-reference

Use when querying, modifying, or converting JSON, YAML, TOML, XML, CSV, HCL, or INI with dasel v3. Complete reference for selectors, functions, conditionals, variables, spread operator, type casting, and format-specific patterns.

Jamie-BitFlight/data-exploration

Use when exploring unknown structured data files with dasel v3 — discover schema, list keys, find nested values, sample arrays, identify data types across JSON, YAML, TOML, XML, CSV, HCL, INI formats

Jamie-BitFlight/data-transformation

Use when modifying, converting, or transforming structured data with dasel v3 — in-place mutations, format conversion, batch operations, array manipulation, object construction, and merge patterns across JSON, YAML, TOML, XML, CSV, HCL, INI

Jamie-BitFlight/delegate

Decompose substantive work into phases, dispatch each phase to a sub-agent, and adjudicate what comes back. Use whenever a request asks for implementation, investigation, a fix, a review, or any change to files — including small ones — and whenever you are about to read source or run a diagnostic yourself instead of handing it off. Also use when a report from a sub-agent needs judging, when a phase needs re-dispatching, or when a user names one instance of a pattern. Does not apply when your own prompt begins "Your ROLE_TYPE is sub-agent." — then follow references/sub-agent-contract.md instead.

Jamie-BitFlight/enterprise-hibernate-hbm

Dasel v3 query patterns for Hibernate .hbm.xml mapping files — entity-table binding, Java property-to-column extraction, one-to-many set/list/bag relationship tracing, many-to-one foreign key discovery, batch scanning across 60+ HBM files. Use when querying Hibernate ORM class mappings, extracting schema metadata from Java persistence layer, or auditing entity-column relationships in enterprise legacy codebases.

Jamie-BitFlight/enterprise-maven-pom

Dasel v3 selector patterns for Maven POM XML files — use when querying dependency versions, filtering by groupId or scope, extracting module hierarchy from parent POMs, or detecting version conflicts across enterprise multi-module Java projects. Load this skill when working with pom.xml files using dasel.

Jamie-BitFlight/enterprise-spring-xml

Dasel v3 selectors for Spring bean factory XML — use when querying any Spring ApplicationContext XML for bean discovery, dependency wiring, JMS destination mapping, property injection extraction, or cross-bean reference tracing. Load this skill before writing dasel selectors against Spring bean XML files (applicationContext.xml, *_beans.xml, spring-*.xml).

Habilidades Relacionadas