From arn-infra
This skill should be used when the user says "refresh infra references", "update tool versions", "check for new MCPs", "update infra patterns", "refresh registries", "arn infra refresh", "infra refresh", "update references", "check for updates", "refresh infrastructure tools", "update MCP servers", "refresh CLI versions", "update base images", "arn-infra-refresh", or wants to update the version-sensitive infrastructure reference files (tool versions, MCP packages, CLI commands, base image tags, IaC patterns) using online research.
npx claudepluginhub appsvortex/arness --plugin arn-infraThis skill uses the workspace's default tool permissions.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Builds 3-5 year financial models for startups with cohort revenue projections, cost structures, cash flow, headcount plans, burn rate, runway, and scenario analysis.
Refresh the project-local infrastructure reference files using online research. This skill searches for the latest stable versions of tools, MCP servers, CLI commands, base image tags, and IaC patterns, then updates the externalized reference overrides in .arness/infra-references/ while preserving checksums for future conflict detection.
The 28 evolving reference files are organized into 6 categories (registries, IaC patterns, container patterns, CI/CD patterns, cloud patterns, infrastructure guides). Users can refresh all categories at once, select specific categories, or target a single file.
Read ## Arness from the project's CLAUDE.md. If no ## Arness section exists or Arness Infra fields are missing, inform the user: "Arness Infra is not configured for this project yet. Run /arn-infra-wizard to get started — it will set everything up automatically." Do not proceed without it.
Extract:
~/.arness/user-profile.yaml (or .claude/arness-profile.local.md if it exists — project override takes precedence). Apply the experience derivation mapping from ${CLAUDE_PLUGIN_ROOT}/skills/arn-infra-ensure-config/references/experience-derivation.md. If no profile exists, check for legacy Experience level in ## Arness as fallback..arness/infra-references)If Reference overrides is not configured, stop and instruct the user: "Reference overrides are not configured. Run /arn-infra-init (or upgrade your existing configuration) to set up reference externalization before refreshing."
Read the checksums tracking file and the reference manifest to understand the current state of all externalized reference files.
.reference-checksums.json from the Reference overrides path (e.g., .arness/infra-references/.reference-checksums.json)Read ${CLAUDE_PLUGIN_ROOT}/skills/arn-infra-refresh/references/reference-manifest.md.reference-checksums.json, these are newly added reference files from a plugin update. Copy them from the plugin defaults (${CLAUDE_PLUGIN_ROOT}/skills/<source-path>) to the Reference overrides directory, generate their SHA-256 checksums, and add them to .reference-checksums.json with updatedBy: "init" before proceeding.Present current state to the user:
"Reference Overrides Status:
Present scope selection adapted to the user's experience level.
Expert:
Ask (using AskUserQuestion):
"Refresh scope?"
Options:
If All (28 files): proceed to Step 3 with all 28 files selected.
If Single file: ask the user to specify the filename. Proceed to Step 3 with that single file.
If Select categories:
Ask (using AskUserQuestion) with 2 questions:
Q1 (multiSelect: true): "Tooling categories (select any):"
Options:
Q2 (multiSelect: true): "Operations categories (select any):"
Options:
Combine the selected categories from both questions and proceed to Step 3 with the matching files.
Intermediate: Present a recommended scope:
"I recommend refreshing Registries and IaC Patterns -- these categories change most frequently and have the highest impact on generated infrastructure code.
Ask (using AskUserQuestion):
"How would you like to proceed?"
Options:
Beginner: Default to refreshing all categories:
"I'll refresh all 28 reference files across all categories to make sure everything is up to date. This will search online for the latest stable versions of tools, patterns, and configurations."
Ask (using AskUserQuestion):
"Refresh all 28 reference files?"
Options:
For each selected category, spawn the arn-infra-reference-researcher agent to research current versions and compare against the local reference content.
Read
${CLAUDE_PLUGIN_ROOT}/skills/arn-infra-refresh/references/research-strategies.mdfor per-category search queries and verification procedures.
For each file in the selected categories:
${CLAUDE_PLUGIN_ROOT}/skills/<source-path-from-manifest>) before proceeding, and record the copy in .reference-checksums.json with updatedBy: "init".research-strategies.mdInvoke the arn-infra-reference-researcher agent via the Task tool with:
--- CURRENT FILE CONTENT ---
Filename: [filename]
Category: [category]
Source path: [source from checksums]
[full content of the local override file]
--- END CURRENT FILE CONTENT ---
--- RESEARCH INSTRUCTIONS ---
[per-category research strategy from research-strategies.md]
Research the latest stable versions, package names, and patterns for the content
in this file. Compare against the current content and report any updates needed.
Rules:
- Only recommend stable/GA releases, never alpha/beta/RC
- Only recommend official first-party tools
- Include source URLs for every finding
- Flag breaking changes or deprecations prominently
- If no updates are found, report "No updates found" rather than guessing
--- END RESEARCH INSTRUCTIONS ---
When multiple categories are selected, spawn researcher agents in parallel (one per category or per file, depending on the scope size) to minimize total research time.
Aggregate the results from all researcher agents and present a summary.
If updates were found:
"Refresh Findings:
[Category 1]:
| File | Change | Old Value | New Value | Source |
|---|---|---|---|---|
| [filename] | [what changed] | [old] | [new] | [URL] |
| ... | ... | ... | ... | ... |
[Category 2]:
| File | Change | Old Value | New Value | Source |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
Summary: [N] updates found across [M] files in [K] categories. Breaking changes: [list any breaking changes, or 'None']"
If no updates were found:
"All reference files are up to date. No changes needed."
If updates were found:
Ask (using AskUserQuestion):
"How would you like to proceed with the [N] updates found?"
Options:
For each approved update:
.reference-checksums.json:
.reference-checksums.json:
sha256 to the new checksumlastUpdated to the current ISO 8601 timestampupdatedBy to "refresh"lastRefreshed timestamp in .reference-checksums.jsonPresent a final summary of the refresh operation:
"Refresh Complete:
Next steps:
/arn-infra-discover -- re-discover tools with updated registries/arn-infra-define -- generate IaC with updated patterns/arn-infra-containerize -- build containers with updated base images/arn-infra-pipeline -- update CI/CD with latest action versions"## Arness config missing: Suggest running /arn-infra-wizard to get started. Stop./arn-infra-init or upgrading the existing configuration to enable reference externalization. Stop..reference-checksums.json missing: Regenerate the checksums file by cross-referencing files in the Reference overrides directory against the reference manifest. For each matched file, compute its SHA-256 and populate source and category from the manifest, set lastUpdated to the current timestamp, and updatedBy to "regenerated". Files in the overrides directory that do not appear in the manifest are left untracked. Warn: "Checksums file was missing and has been regenerated. Checksum-based conflict detection may be inaccurate until the next full refresh."${CLAUDE_PLUGIN_ROOT}/skills/<source-path-from-manifest>) to the Reference overrides directory. Add it to .reference-checksums.json with updatedBy: "init". Then proceed with research as normal.[filename] has been modified since the last refresh/init. Would you like to overwrite with the researched update, or skip this file?" If overwrite: apply the update and record the new checksum. If skip: leave the file unchanged.