Skip to content

Install the agent skill with flux install claude, omp or codex - #19

Merged
JoeriDijkstra merged 1 commit into
masterfrom
feat/install-command
Oct 12, 2026
Merged

JoeriDijkstra merged 1 commit into
masterfrom
feat/install-command

Conversation

@JoeriDijkstra

Copy link
Copy Markdown
Contributor

Goal

Install the Flux skill with flux install claude, omp or codex

brew install eyra/tap/flux-cli and go install install only the binary, not the agent skill. Before this change, only install.sh copied skill/SKILL.md, and only to ~/.claude/skills/flux, and an installed skill went stale when the binary was upgraded. With this change, the binary carries its own skill and can install it for Claude Code, omp and Codex.

Spec: docs/specs/install-command.md. This PR is step 1; install.sh is switched over in a follow-up after v0.5.0 is released, so that curl … | bash never calls a command the latest release doesn't have.

Changes

  • New command flux install claude|omp|codex. It writes the skill, embedded in the binary from skill/SKILL.md, to:

    Target Path Override
    claude ~/.claude/skills/flux/SKILL.md CLAUDE_CONFIG_DIR
    omp ~/.omp/agent/skills/flux/SKILL.md PI_CODING_AGENT_DIR
    codex ~/.agents/skills/flux/SKILL.md none
  • If the existing SKILL.md is identical, nothing is written. If it differs, it is first renamed to SKILL.md.bak-<time>, as install.sh does now. If the skill folder or SKILL.md is a symlink, the command writes nothing and fails, so a symlink pointing at a checkout of this repo is never overwritten.

  • --json prints {"ok":"true","path":…}, adding "backup" when a backup was made.

  • The help text and the README explain that flux install codex also covers omp, because omp reads ~/.agents/skills.

  • The Homebrew cask gets caveats telling users to run the commands, and to rerun them after brew upgrade.

Verification

  • go vet ./... and go test ./... pass. The new tests cover every target with and without its override, the no-backup and backup paths, and refusing symlinks.
  • goreleaser check (v2.18.3) validates the config with the cask caveats.
  • With the built binary, the installed skill loads in every agent:
    • Claude Code 2.1.281: flux appears in the stream-json init skills. With CLAUDE_CONFIG_DIR set, the skill is read from there and ~/.claude is ignored.
    • omp 18.8.6: flux is listed once, even with identical copies in ~/.omp/agent/skills and ~/.agents/skills.
    • Codex 0.162.1: app-server skills/list returns flux with scope user and enabled: true.

The binary embeds skill/SKILL.md and installs it where each agent reads
personal skills, so brew and go install users get the skill and can
refresh it after upgrading. A changed SKILL.md is backed up first; a
symlinked skill folder or file is refused.
@JoeriDijkstra
JoeriDijkstra merged commit 48de64b into master Oct 12, 2026
2 checks passed
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