fe-skills
v0.2.0
Published
Portable FE-namespaced agent skills and their optional management CLI.
Readme
FE Skills
A public collection of independent agent skills under the fe- namespace,
plus an optional TypeScript CLI for installation, configuration, validation,
and diagnosis.
The repository contains no personal defaults or memory data. Each skill can be installed and used without the CLI.
Requirements
- Node.js 22 or newer
npxfor skills.sh installation- one or more supported harnesses: Claude Code, Codex, or OpenCode
uvxonly when configuring the Basic Memory-backedfe-memorycapability
Development uses Bun, but users of the published CLI do not need Bun.
Install a skill directly
Use skills.sh when no configuration workflow is needed:
npx --yes skills@latest add farhadeidi/skills \
--skill fe-coordinate-herdr \
--agent codex \
--globalAvailable skills:
fe-coordinate-herdr: execute an approved multi-agent workflow through Herdr.fe-supervise-project: own a supervised project workflow and delegate execution to compatible backends.fe-memory: use durable cross-session memory or guide explicit setup when the capability is missing.
Every skill is manual-only. Invoke it explicitly by name.
Use the optional CLI
Run the public CLI directly through npx; no global installation is required:
npx fe-skillsRunning the CLI without a command opens an interactive menu for browsing, installing, removing, configuring, and diagnosing FE capabilities. Explicit commands remain available for repeatable workflows and automation.
For development from a checkout:
bun install
bun run build
node dist/cli.js listThe public command surface is:
npx fe-skills list
npx fe-skills install <skill>
npx fe-skills remove <skill>
npx fe-skills configure <capability>
npx fe-skills unconfigure <capability>
npx fe-skills doctor [capability]
npx fe-skills validateMutating commands preview their exact plan and ask before applying. Automation
can use --dry-run, --yes, and --json:
npx fe-skills install fe-coordinate-herdr \
--target codex,claude-code \
--yes
npx fe-skills install fe-memory --target codex --yes
npx fe-skills configure fe-memory \
--path ~/agent-memory \
--target codex,claude-code \
--create \
--yes
npx fe-skills doctor fe-memory --json
npx fe-skills unconfigure fe-memory --yesMachine-specific choices are stored in
~/.config/fe-skills/config.json. The repository never supplies a default
memory directory.
fe-memory
fe-memory is a portable capability name backed by Basic Memory. Configuration
does three scoped things:
- registers the chosen directory as a local Basic Memory project;
- adds the
fe-memoryMCP entry to selected harnesses; and - records the chosen path, project name, and targets in local
fe-skillsconfiguration.
The default local project name is fe-memory; the storage directory is always
chosen by the user. Existing projects are never silently repointed. OpenCode's
JSONC configuration is edited structurally so comments and unrelated settings
remain intact. Restart already-running harness sessions after configuration.
Unconfiguring removes only MCP entries that still match the configuration
managed by fe-skills. It retains the memory directory and Basic Memory project;
drifted harness entries are preserved and reported for manual review.
Memory data, credentials, and machine configuration are not committed to this repository. The routing policy lives with the independently installed skill.
OpenCode compatibility
OpenCode receives both a same-named slash-command adapter and the shared
manual-skill permission adapter. Together they keep fe-* skills hidden from
implicit model discovery while allowing explicit user invocation. See
standards/opencode-compatibility.md.
Deprecated initializer
fe-init-project is no longer distributed. Existing installations can remove
it with:
npx fe-skills remove fe-init-project \
--target claude-code,codex,opencode \
--yesFor creating or improving repository instructions, use the independent
agents-md-guide. It is the
canonical methodology and is intentionally not coupled to this toolkit.
Repository architecture
toolkit.json public inventory and portable templates
skills/ independently installable skills
standards/ canonical shared contracts
mcp/ portable MCP definitions and adapters
src/ TypeScript CLI and side-effect adapters
test/ unit, contract, and CLI integration tests
scripts/sync-references.sh generated-reference synchronizationThe CLI follows one mutation path:
inspect → calculate plan → preview → approve → apply → verify--dry-run returns the same plan without applying it. Local configuration is
written atomically after external setup actions succeed.
Development
bun install
bun run typecheck
bun run test:coverage
./scripts/sync-references.sh --check
bun run src/cli.ts validate
npm pack --dry-runThe test suite uses temporary home directories and fake harness executables; it does not mutate the developer's installed agents or memory.
See the complete setup guide for operating-system notes, harness configuration surfaces, lifecycle commands, automation, and troubleshooting.
License
MIT
