Open sourceRust CLI · v1.5.0

Manage your agent's setup. Just ask.

Tell your agent which skills, instructions, or hooks to add or update. It handles the commands while Dalo checks approvals and preserves your own files during sync.

Paste into your coding agent

Install Dalo, the agent skill manager.

Recommended for local coding agents on macOS and Linux. The agent sets up Dalo and its bundled assistant. Then keep using it in conversation. How it works

Prefer the terminal? Install the CLI
curl -fsSL https://dalo.sh/install.sh | sh

One binary into ~/.local/bin, no sudo. The SHA-256 checksum is always verified, Sigstore provenance when cosign is installed. Installer source · Uninstall guide · Windows via WSL.

Dalo through your agent · example workflow
You

Update my skills and show me what changed.

Your agent

I'll check local changes and conflicts, then show you the update plan. Dalo will keep unapproved catalog skills out of the sync.

You

Show me which skills need approval.

Your decision review first
sebastian:effective-web
Security preflightclean · 15 rules
Selected from catalogsebastian

Your agent explains the skill; Dalo checks its approval before linking it.

Verified agents
6plus any skill folder
Codex Claude Code OpenClaw Hermes OpenCode Cursor

One agent setup per laptop, and nobody knows which skills were reviewed.

A skill is a folder with a SKILL.md that teaches an agent one job. Teams collect dozens of them, copied from the internet and edited by hand, until every machine runs a different set. Dalo keeps one reviewed set in Git and delivers it to every agent: the skills, the instructions that go with them, and the hooks that run at the right moment.

Skills

Select and review skills from Git sources, then sync the same pinned set into supported agent folders.

Manage skills

Instruction packs

Share the rules that are not skills as managed blocks in Codex AGENTS.md and Claude CLAUDE.md. Dalo updates only its own block; the rest of the file stays yours.

Share instructions

Hooks and tools

Package hooks together with the tools they run. Each one waits for its own approval before Dalo projects it into Codex or Claude.

Explore plugins
One source of truth

One pinned set. Every machine.

Your team's skills live in Git. Dalo resolves one pinned set and links it into supported agent folders, byte for byte the same on every laptop. The repository decides what is in the set; each machine still approves catalog skills itself.

See how it works
SourcePriorityPinnedDelivers
localyour machine0not pinnedyour experiments
companyteam repository109fd01b1745d32 skills
sebastianpublic catalog200de93f7bf5441 selected · pending
Pinned to exact commits Lower priority wins name conflicts
Reviewed first

Review skills before they reach an agent.

Your agent helps you understand what a skill does before you decide to trust it. Dalo checks every skill with fifteen local security rules and requires approval for catalog skills before linking them.

Read the security model
sebastian:effective-web
Public catalog · pinned
approved
  1. Selected

    Only the skills you pick from a catalog.

  2. Security preflight

    High findings block until you accept the risk.

  3. Approved by you

    $dalo approve skill sebastian:effective-web
Safe by default

Only touches what it owns.

During sync, Dalo leaves your own files and folders in place. It updates only the links and managed content it owns, and reports conflicts that need your decision. Ask your agent to preview changes with --dry-run.

Dalo may manage what it owns. It does not take ownership by surprise.

~/.claude/skills
  • incident-review -> store managed
  • release-notes -> store managed
  • my-draft/ yours · untouched
$dalo sync --dry-run

Many sources in. One reviewed set out.

The store is the source of truth; agent folders are output targets.

Local skills, a team repository and a public catalog flow into Dalo, which pins and checks one approved set and links it into Codex, Claude Code, OpenClaw, Hermes, OpenCode, Cursor and any folder. SourcesOne resolved setAgent folders Local~/.dalo/local Team repoacme/agent-skills Public catalogselected + pinned Codex~/.agents/skills Claude Code~/.claude/skills OpenClaw~/.agents/skills Hermes~/.hermes/skills OpenCode~/.config/opencode/skills Cursor~/.cursor/skillsAny foldergeneric · any path Pinned · checked Local skills, a team repository and a public catalog flow into Dalo, which links one pinned, checked and approved set into Codex, Claude Code, OpenClaw, Hermes, OpenCode, Cursor and any folder. SourcesAgent folders Local Team repo Catalog Codex~/.agents/skills Claude Code~/.claude/skills OpenClaw~/.agents/skills Hermes~/.hermes/skills OpenCode~/.config/opencode/skills Cursor~/.cursor/skillsAny foldergeneric · any path Pinned · checked

When your agent setup becomes team infrastructure.

Dalo pins and reviews skills, shares standing instructions, and gates tools and hooks through exact approvals.

Aspect Dalo skills.sh agentfiles
Built for Teams managing skills, instructions, and hooks Discovering and installing public skills Browsing and editing agent files in Obsidian
Beyond skills Managed instructions, portable plugins, approved tools and hooks Installs skills Browses rules and agent files; installs skills
Pinning Exact commits in lockfiles Branch or tag plus content hash Updates to latest HEAD
Existing folders Never overwritten Replaced on install Replaced on install
Review Preflight, audits, explicit approval Audit pages on skills.sh None built in

Snapshot from September 2026. Find skills on skills.sh, then let Dalo pin and deliver the ones your team selects. Read the full comparison

Built to rely on.

Dalo is v1.5.0. Sources, deterministic resolution, security audits and review gates, safe sync, and diagnostics have all shipped, under the 1.x compatibility contract.

Remaining proposals are tracked in open feature issues.

Your first step is a message.

Use the coding agent you already have. It handles installation and everyday skill management, with no separate model, API key, or server.

  1. Ask your agent to set it up

    Install Dalo, the agent skill manager.

    Your agent needs local file and command access and installs the Dalo skill as part of setup.

  2. Tell it what you want to do

    Select the Dalo skill, then ask: “Add my team's skill repository,” or “Check my existing skills and explain what needs attention.” Use your own language.

What you can ask after setup

Try these requests in your agent with the Dalo skill selected:

  • “What skills do I have, and what needs attention?”
  • “Update my skills and show me what changed.”
  • “Make the same skills available in Claude Code.”
  • “Move my skills.sh setup to Dalo and keep my changes.”
More things you can ask
Try the CLI in a throwaway sandbox

Install the binary first with the terminal instructions above. npx getdalo also runs it without a global install. These commands use temporary folders. Afterwards, unset DALO_STORE SKILLS_DIR returns your shell to your real setup.

first sync
# sandbox: no real agent folders touched
$ export DALO_STORE="$(mktemp -d)/store"
$ export SKILLS_DIR="$(mktemp -d)/skills"
$ dalo init
$ dalo target link generic "$SKILLS_DIR"
 
# try a real public catalog
$ dalo source add-catalog sebastian https://github.com/sebastian-software/skills.sebastian-software.com.git
$ dalo source inspect sebastian
$ dalo source select sebastian effective-web
$ dalo audit sebastian:effective-web
$ dalo approve skill sebastian:effective-web
$ dalo sync
security preflight: deterministic checks only
The 15-second secure-sync demo. Download the MP4
  1. Use it for the next change, too

    Your agent reads Dalo's reports and explains what needs a decision. Catalog skills wait for approval, conflicts stay visible, and sync leaves your own folders in place. If your host caches its skills, reload them or start a new session after setup.

    Read the conversation guide
Prefer commands? Follow the CLI guide

Not starting from zero?

Pick the situation that matches yours. Dalo leaves existing folders alone until you decide.

  • Skills already in an agent folder

    Ask: “Check my existing skills and bring them under Dalo. Keep my changes.” Your agent inspects them first and explains the adoption plan. Adopt a skill

  • A project that uses skills.sh

    Ask: “Move this project's skills.sh setup to Dalo.” Dalo checks installed copies against their sources; your agent explains any differences that need a decision. Migration guide

  • Skills for one repository

    Ask: “Set up Dalo for this repository so every clone gets the same skills.” A committed project definition pins the set, with a separate store in each clone. Project installations

  • A team sharing skills

    Ask your agent to connect your team's skill repository. Everyone draws from the same Git source; catalog approvals stay on each machine. Team repository guide

Get it wrong. Dalo gets you back.

Typos get a suggestion, unknown skills get the list of known ones, and a blocked sync prints the exact command that unblocks it.

recovery, not dead ends
$ dalo synk
error: unrecognized subcommand 'synk'
  tip: a similar subcommand exists: 'sync'
 
$ dalo approve skill company:relese-helper
error: skill `company:relese-helper` was not found; did you mean `company:release-helper`?; known skills: company:new-skill, company:release-helper
 
$ dalo sync
dalo store: ~/.dalo
nothing materialized: resolution is incomplete
  pending approval: sebastian:effective-web (run: dalo approve skill sebastian:effective-web)

Use your agent to manage your setup.

Ask your agent to add skills, review updates, or fix a problem in your setup. Dalo's approval and ownership checks still apply when your agent runs the sync.

Install Dalo, the agent skill manager.

Open source under MIT or Apache-2.0. Uses your existing local coding agent on macOS or Linux. Agent setup guide