Skip to content

feat(agent-vault): install access bundle skills for agents - #462

Open
saifsmailbox98 wants to merge 8 commits into
mainfrom
feat/agent-vault-skills
Open

saifsmailbox98 wants to merge 8 commits into
mainfrom
feat/agent-vault-skills

Conversation

@saifsmailbox98

@saifsmailbox98 saifsmailbox98 commented Oct 27, 2026 •

Copy link
Copy Markdown
Member

Description 📣

Adds skills to infisical agent-vault run. Before the agent starts, the CLI downloads the session's skills once from Infisical (GET /v1/agent-vault/session/skills, authenticated with the session token) and installs them on the host.

  • Each skill is written as a real folder to ~/.agents/skills/<name>, which Codex, OpenCode and OpenClaw read
  • If ~/.claude (or $CLAUDE_CONFIG_DIR) or ~/.hermes (or $HERMES_HOME) exists, or the agent command is claude, the skill is linked into that agent's skills folder. Falls back to a copy where links are not allowed (Windows without developer mode), and skips the link when that folder already resolves to ~/.agents/skills
  • In an agent's skills folder only a link or an earlier copy of the same skill is replaced. Any other folder with that name is left alone with a warning
  • --skills-dir <folder> installs into another folder, with no links. --no-skills skips the step, for hosts that can't reach Infisical
  • Installed skills stay after the agent exits
  • Each skill's files are checked against its sha256 before writing, and file paths, modes and symlinks are validated on write
  • The skills step has a 30s deadline. If it fails, the agent starts without skills and a warning gives the reason (the server's message for a rejected session). A 401 right after minting is retried twice, in case the session hasn't reached a read replica yet
  • Ctrl-C, SIGTERM, SIGHUP or SIGQUIT during the step revokes the session and exits with the signal's code
  • Revoke at exit: an interrupted run gives up after 10s, a normal exit retries the login 3 times within 30s
  • Prints Installed N skills in <dir> (linked in <claude skills dir> and <hermes skills dir>).

Also adds infisical agent-vault skills push <folder>, which creates a skill or publishes a new version of it from a local folder (keeps executable bits, skips hidden files).

Companion PR: Infisical/infisical#8981

Type ✨

  • Bug fix
  • New feature
  • Improvement
  • Breaking change
  • Documentation

Tests 🛠️

# Here's some code block to paste some code snippets

@infisical-review-police

Copy link
Copy Markdown

💬 Discussion in Slack: #pr-review-cli-462-feat-agent-vault-install-access-bundle-skills-for-agents

Posted by Review Police — reviews, comments, new commits, and CI failures will stream into this channel.

@greptile-apps

greptile-apps Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 4/5 Tier: plus

[Medium impact] The PR changes the Agent Vault run and skill-publishing workflows.

The PR still needs a way for proxy-only hosts to download their attached skills before merging.

Findings

  1. P1 Proxy-only hosts lose skills ▶

Summary

Adds skill downloads and installation before agent-vault run, plus agent-vault skills push for publishing local folders.

  • Agent Vault installs session skills before the agent starts.
  • Developers can publish a local skill folder to Infisical.
  • Interrupted runs revoke their new session and exit promptly.

Previous decisions:

  • saifsmailbox98 accepted failed replacements losing managed skills because later runs reinstall them and failures show warnings.
  • saifsmailbox98 accepted concurrent install conflicts because they are rare and later runs reinstall skills.
  • saifsmailbox98 disputed the file-loop cancellation concern because each skill is limited to 50 files and 1 MB; Greptile withdrew it.

Reviews (9) · Last reviewed commit: "fix(agent-vault): end a SKILL.md header ..." · Reviewed by Greptile

Comment thread packages/cmd/agent_vault_run_skills.go Outdated
Comment thread packages/cmd/agent_vault_run_skills.go Outdated
Comment thread packages/agentvault/skilltree.go
Comment thread packages/agentvault/skilltree.go
Comment thread packages/agentvault/skilltree.go Outdated
Comment thread packages/agentvault/skilltree.go
Comment thread packages/cmd/agent_vault_run_skills.go Outdated
@veria-ai

veria-ai Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

PR overview

All previously flagged issues have been addressed. No open security concerns remain on this pull request.

Security review

No open security issues remain on this pull request.

Fixed/addressed: 1 · PR risk: 0/10

# Conflicts:
#	packages/agentvault/resolve.go
#	packages/api/agent_vault_test.go
#	packages/cmd/agent_vault_run_test.go
@linear

linear Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

AGE2-261

AGE2-136

Comment thread packages/api/agent_vault.go
@saifsmailbox98

Copy link
Copy Markdown
Member Author

@greptile review

Links into Claude Code and Hermes only replace a link or an earlier
copy of the skill, Claude Code is linked when it is the agent, and
--no-skills skips the step. A 401 right after minting is retried, the
server's reason is shown, older servers are recognised, and the skills
step handles the same signals as the agent step. Revoke at a normal
exit gets its retries back.
A SKILL.md header that isn't valid YAML names the line, and an unquoted
value with ': ' is told to use double quotes. A domain without the
skills route now warns, the server's message no longer gets a second
period, and a second signal during the interrupt revoke cuts it short
with its warning. --skills-dir expands ~, and agent folders are
reported as absolute paths.
Comment thread packages/agentvault/skills.go
Comment thread packages/agentvault/skills.go Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant