Keeping every CLI in sync
Skills, tool servers, roles and variables described once and delivered to Claude Code, Codex, Grok and Kimi in whatever shape each of them wants.
Four agent CLIs, four configuration formats, four places on disk. beafk keeps
one description of each thing and writes each agent's own files.
What gets synced
- Skills — the pages your agents read, plus a pointer to
them in each CLI's own instructions file.
- Tool servers — written into each agent's config in
the shape that agent expects, with the credentials delivered separately.
- Roles — the crew's briefs.
- Variables — loaded into every chat, terminal
and command started in that folder.
Where it happens
settings on the machine's panel. Each of those has a screen, and each screen
has a delivery view: which agents have it, which are behind, and what would be
written.
When it happens
On a change, and on request. Adding a skill and pressing sync means the next
chat on any agent has it.
Two caveats:
- A chat that is already running may not pick up a new tool server.
Start a new one.
- Some agents ignore a mid-chat change to their tool list entirely,
even when told. If a tool is not there, the reliable fix is a fresh
chat.
What it does not touch
Anything you wrote yourself in those files that beafk did not put there. The
blocks beafk manages are marked, and it writes inside them.
Doing it from a terminal
beafk skills load # the pointer, into every agent's instructions here
beafk env sync # the variables, onto this machine
The point
"Our reviewer should check migrations against the schema doc" becomes true for
every agent you run, in one place — rather than a thing you remember to tell
Claude and forget to tell Codex.