metagit-cli
CLI-only shortcuts for metagit agents — workspace catalog, discovery, prompts, sync, layout, and config.
Skill by metagit-ai
Chalk Labs
Need help deploying metagit-cli?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/metagit-ai-metagit-cli
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/metagit-cli
What's inside
- Skill name
metagit-cli- Description
- CLI-only shortcuts for metagit agents — workspace catalog, discovery, prompts, sync, layout, and config. Use instead of MCP or HTTP API when operating from a shell or agent_mode session.
- License
- MIT
- Metadata
- internal: true
- Instructions
- 586 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- body: 586 lines (spec recommends under 500)
Files (2)
- SKILL.md
- SKILL.md · metagit-cli/
SKILL.md (first lines)
# Metagit CLI (agent shortcuts)
Use this skill when an agent should drive metagit **only through the `metagit` command**. Do not call MCP tools or `metagit api` from workflows covered here unless the user explicitly asks.
Set non-interactive defaults when automating:
```bash
export METAGIT_AGENT_MODE=true
```
**Token hygiene:** do not dump `detect` yaml/json, `config example`, or a full umbrella `.metagit.yml` into context. Prefer `-o summary`. Write full detect payloads with `--output-file .metagit/.detect/…`. Never run `metagit detect repo_map`. Bootstrap with `metagit init --kind application --no-prompt` (see `metagit-bootstrap`).
<!-- modality:context_reduction -->
<!-- modality:campaign_board_link -->
Agents: `metagit config show --json` refuses above 80 repos unless `--confirm-full`. `workspace list --json` omits `summary.workspace` unless `--include-workspace`. Maps/lists are paged (default 80). Large umbrellas: `metagit prompt workspace -k large-workspace --text-only`.
**Session start** (from umbrella repo with `.metagit.yml`):
```bash
metagit context pack --tier 0 --json
metagit prompt workspace -k session-start --text-only -c .metagit.yml
```
Repo-root agent docs: [AGENTS.md](https://github.com/metagit-ai/metagit-cli/blob/main/AGENTS.md) · [llms.txt](https://github.com/metagit-ai/metagit-cli/blob/main/llms.txt) · [docs/agents.md](https://metagit-ai.github.io/metagit-cli/agents/).
<!-- modality:nav_flattened -->
<!-- modality:managed_repo_search -->
## Navigate a target (copy/paste)
Do **not** call `metagit nav` (human FuzzyFinder; rejected in `METAGIT_AGENT_MODE`).
```bash
# 1. List every managed project/repo + path
metagit workspace repo list -c .metagit.yml --json
# MCP: metagit_workspace_repos_list
# 2. Resolve one absolute path (fails if the query is ambiguous)
cd "$(metagit search '<repo>' -c .metagit.yml --path-only)"
# MCP: metagit_repo_search { "query": "<repo>", "path_only": true }
```
Humans: `metagit nav --all` (optional `--unmanaged`, `--print-path`).
Global flags (most commands):
- `metagit -c path/to/metagit.config.yaml` — **appconfig** only (default `metagit.config.yaml`)
- Workspace manifest: `-c .metagit.yml` on `metagit config …`, `metagit workspace …`, and leaf `config graph suggest|export -c …`
- Workspace manifest on the coordination families (`branch`, `lease`, `worktree`, `claim`, `task`, `semantic`, `merge`, `schedule`, `aos`): `--definition .metagit.yml` — these commands expose **no `-c`**
- `--workspace-root` on graph suggest — checkout root used to **scan** inferred deps (default: appconfig `workspace.path`); not the manifest path
---
## Manifest editing fast map (`.metagit.yml`)
Use this table first when changing a workspace manifest from the CLI. Prefer **catalog commands** for projects/repos; use **`config patch`** for everything else in the schema (documentation, graph, dedupe overrides, nested fields).
| Task | Command |
|------|---------|
| **Inspect** manifest on disk | `metagit config show -c .metagit.yml` |
| **Inspect** normalized model | `metagit config show -c .metagit.yml --normalized` |
| **Inspect** as JSON (agents) | `metagit config show -c .metagit.yml --json` (refused on large umbrellas unless `--confirm-full`) |
| **Browse** fields / paths | `metagit config tree -c .metagit.yml` or `… --json` |
| **Validate** after edits | `metagit config validate -c .metagit.yml` |
| **Dry-run** schema change | `metagit config preview -c .metagit.yml --file ops.json` |
| **Apply** schema change | `metagit config patch -c .metagit.yml --file ops.json --save` |
| **Set one field** | `metagit config patch -c .metagit.yml --op set --path <path> --value <v> --save` |
| **Enable** optional block | `metagit config patch … --op enable --path <path> --save` |
| **Add list item** | `metagit config patch … --op append --path <list.path> --save` then `set` on `[index].field` |
| **Remove list item** | `metagit config patch … --op remove --path <list.path>[index] --save` |
| **Split** into per-project files | `metagit config split -c .metagit.yml --by all --dir .metagit.d` |
| **Preview** a split | `metagit config split -c .metagit.yml --by all --dry-run` |
| **Flatten** includes to one file | `metagit config flatten -c .metagit.yml` |
| **Show** the root file when split | `metagit config show -c .metagit.yml --source` |
When `.metagit.yml` contains `includes:`, edit the fragment that owns the project or graph entry (`.metagit.d/projects/<name>.yml`, or the graph fragment). Do not paste a merged manifest over the root. `metagit config validate` reports errors as `fragment:line`. `metagit fmt -c .metagit.yml` formats the root and every fragment. Older metagit releases reject `includes` (`Extra inputs are not permitted`).
### Catalog shortcuts (projects & repos)
| Task | Command |
|------|---------|
| List projects | `metagit workspace project list -c .metagit.yml --json` |
| List repos (all / one project) | `metagit workspace repo list -c .metagit.yml --json` / `… --project <p> --json` |
| Add project | `metagit workspace project add -c .metagit.yml --name <p> --json` |
| Remove project | `metagit workspace project remove -c .metagit.yml --name <p> --json` |
| Rename project (dry-run) | `metagit workspace project rename -c .metagit.yml --name <old> --new-name <new> --dry-run --json` |
| Add repo | `metagit workspace repo add -c .metagit.yml --project <p> --name <r> (--url <url> | --path <path>) --json` |
| Remove repo (manifest only) | `metagit workspace repo remove -c .metagit.yml --project <p> --name <r> --json` |
| Rename / move repo (dry-run) | `metagit workspace repo rename …` / `metagit workspace repo move … --dry-run --json` |
| Search before adding | `metagit search "<name>" -c .metagit.yml --json` |
Active project context (optional): `metagit project repo add --name <r> (--url <url> | --path <path>)` after `metagit project select`.
For `workspace.projects[].repos[]`, use `--url` for git-backed entries and `--path` for local-folder entries.
### Schema patch examples (`ops.json`)
Paths use dot/bracket notation (same as web Config Studio). `--value` accepts JSON for objects.
```json
{
"operations": [
{ "op": "set", "path": "name", "value": "my-workspace" },
{ "op": "enable", "path": "documentation" },
{ "op": "append", "path": "documentation" },
{ "op": "set", "path": "documentation[0]", "value": { "kind": "markdown", "path": "AGENTS.md" } },
{ "op": "enable", "path": "graph" },
{ "op": "append", "path": "graph.relationships" },
{
"op": "set",
"path": "graph.relationships[0]",
"value": {
"id": "api-depends-infra",
"from": { "project": "platform", "repo": "api" },
"to": { "project": "infra", "repo": "terraform" },
"type": "depends_on"
}
},
{ "op": "set", "path": "workspace.projects[0].dedupe.enabled", "value": false }From metagit-ai/metagit-cli, MIT.
More from metagit-ai/metagit-cli
- 0.614score
metagit-agent-access
metagit-ai
Optimize any repository for minimal-token agent onboarding — llms.txt, AGENTS.md, hidden HTML agent blocks, docs/agents.md.
SkillAFreshness: A★ 4Claude Code +9 - 0.611score
metagit-bootstrap
metagit-ai
Create or refine a local .metagit.yml.
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-agent-coordination
metagit-ai
Isolate concurrent agents with RFC-0007 ACL primitives: allocate agent/* branches, acquire branch leases, create exclusive git worktrees, and declare advisory…
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-aos
metagit-ai
Compose ACL, task graph, scheduler, merge, and related coordination subsystems via metagit aos|coord status|doctor|next.
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-config-refresh
metagit-ai
Refresh or bootstrap `.metagit.yml` using deterministic init/validate.
SkillAFreshness: A★ 4Claude Code +9 - 0.606score
metagit-campaign
metagit-ai
Plan and track cross-project multi-repo campaigns — YAML overlays, repo rollups, objective fan-out, and MR status.
SkillAFreshness: A★ 4Claude Code +9
Signals
- Stars
- 4
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 18, 2026 (1 month ago)
- Last release
- Oct 2, 2026 (29 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/metagit-ai/metagit-cli
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from metagit-ai
- 0.614score
metagit-agent-access
metagit-ai
Optimize any repository for minimal-token agent onboarding — llms.txt, AGENTS.md, hidden HTML agent blocks, docs/agents.md.
SkillAFreshness: A★ 4Claude Code +9 - 0.611score
metagit-bootstrap
metagit-ai
Create or refine a local .metagit.yml.
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-agent-coordination
metagit-ai
Isolate concurrent agents with RFC-0007 ACL primitives: allocate agent/* branches, acquire branch leases, create exclusive git worktrees, and declare advisory…
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-aos
metagit-ai
Compose ACL, task graph, scheduler, merge, and related coordination subsystems via metagit aos|coord status|doctor|next.
SkillAFreshness: A★ 4Claude Code +9 - 0.609score
metagit-config-refresh
metagit-ai
Refresh or bootstrap `.metagit.yml` using deterministic init/validate.
SkillAFreshness: A★ 4Claude Code +9 - 0.606score
metagit-campaign
metagit-ai
Plan and track cross-project multi-repo campaigns — YAML overlays, repo rollups, objective fan-out, and MR status.
SkillAFreshness: A★ 4Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get metagit-cli running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
metagit-cli skill. Agent Mart. https://agentmart.dev/skills/metagit-ai-metagit-cli (last updated 2026-10-24)