[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-79001":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":8,"htmlUrl":8,"language":9,"languages":8,"totalLinesOfCode":8,"stars":10,"forks":11,"watchers":12,"openIssues":12,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":14,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":15,"rankGlobal":8,"rankLanguage":8,"license":16,"archived":17,"fork":17,"defaultBranch":18,"hasWiki":19,"hasPages":17,"topics":20,"createdAt":8,"pushedAt":8,"updatedAt":21,"readmeContent":22,"aiSummary":23,"trendingCount":13,"starSnapshotCount":13,"syncStatus":24,"lastSyncTime":25,"discoverSource":26},79001,"sidecar","dancinlab\u002Fsidecar","dancinlab",null,"Shell",162,83,1,0,5,5.77,"MIT License",false,"main",true,[],"2026-06-12 02:03:49","\u003Ch1 align=\"center\">🏍️ sidecar\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\u003Cstrong>Claude Code plugin pack — concept-separated guardrails, commands, and skills.\u003C\u002Fstrong>\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg alt=\"License\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue\">\n  \u003Cimg alt=\"Marketplace\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fclaude--code-plugin_marketplace-informational\">\n\u003C\u002Fp>\n\n---\n\n## What is sidecar\n\nA **Claude Code marketplace repo** that side-mounts guardrails, slash commands, and skills onto the host harness without modifying it. Strict concept separation: one plugin = one of `{hook, command, skill}`, no mixing. Project-level identity + governance lives in a single `project.tape` at the repo root (symlinked as `CLAUDE.md`); the cross-project `do` \u002F `dont` layer rides inside the `commons` hook plugin.\n\n## Install\n\n```bash\n# 1. Install hexa-lang (gives you `hexa` + `hx` package manager)\n\u002Fbin\u002Fbash -c \"$(curl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002Fdancinlab\u002Fhexa-lang\u002Fmain\u002Finstall.sh)\"\n\n# 2. Install sidecar\nhx install sidecar\n```\n\nThen in any project root:\n\n```\nsidecar init\n```\n\n`sidecar init` drops three things into the current directory:\n\n- **`project.tape`** — the project's identity + governance carrier (`.tape` v1.2). Open it and fill in the placeholders:\n  - `kind` — one line describing what the project is.\n  - `brief` — 2–4 sentences on purpose · scope · why it exists.\n  - `parent` — org \u002F parent project (e.g. `dancinlab`).\n  - `ssot` — canonical location (repo URL or `hx install \u003Cname>`).\n  - `do` \u002F `dont` — project-level governance bullets, `·` separated.\n- **`CLAUDE.md → project.tape`** — symlink so the harness auto-loads project identity on SessionStart.\n- **`LATTICE_POLICY.md`** — the cross-project real-limits-first verification policy, carried by sidecar. Skipped if one already exists.\n\nThe [`project-tape`](hooks\u002Fproject-tape\u002F) hook re-injects `project.tape` on PreCompact + PostCompact so identity + governance survive auto-compaction.\n\n## Layout\n\n```\nsidecar\u002F\n├── bin\u002Fsidecar               # CLI — init · sync · mirror · sign · profile · enable · disable · reset · master\n├── bin\u002F_overrides.hexa       # per-plugin enable-override store (~\u002F.sidecar\u002Fplugin-overrides.json)\n├── install.hexa              # hx build hook — clone marketplace · cache · enable per active profile\n├── hooks\u002F                    # PreToolUse · SessionStart · PreCompact · PostCompact · LSP plugins\n├── commands\u002F                 # \u002Fslash-command invoked plugins\n├── skills\u002F                   # Skill tool invocable plugins\n├── project.tape              # sidecar's identity + governance (also linked as CLAUDE.md)\n├── LATTICE_POLICY.md         # real-limits-first policy (→ hooks\u002Fcommons\u002F, dropped by `sidecar init`)\n├── CLOSURE_POLICY.md         # closure-honesty policy (SSOT freshness + perpetual domains)\n├── DESIGN.md \u002F DESIGN.log.md # live design-rules pointer + decision audit trail\n├── CHANGELOG.md              # chronological ship log\n└── .claude-plugin\u002F\n    ├── marketplace.json      # plugin manifest (name · source · version)\n    └── profiles.json         # enable-profile tiers (core · hexa · personal · master[creator-only])\n```\n\n## Profiles\n\nsidecar ships an opinionated stack. A **profile** picks which plugins to enable so you don't inherit the whole personal layer — pick one after install:\n\n| Profile | Enables | For |\n|---|---|---|\n| `minimal` | `core` only | general use — universal safety · QoL · workflow |\n| `hexa` | `core` + `hexa` | + the hexa-lang toolchain (`hexa` CLI · `.hexa` \u002F `.tape`) |\n| `full` *(default)* | `core` + `hexa` + `personal` | the complete dancinlab setup |\n| `master` | + `master` tier | **creator-only** — gated by the `~\u002F.sidecar\u002Fmaster` marker |\n\n```\nsidecar profile minimal     # set the profile (re-applies the install)\nsidecar profile             # show the active profile + any per-plugin overrides\nsidecar enable  \u003Cplugin>    # force one plugin ON  — overrides the profile\nsidecar disable \u003Cplugin>    # force one plugin OFF\nsidecar reset   \u003Cplugin>    # drop the override → follow the profile again\nsidecar master on|off|status   # mint\u002Fremove the creator marker (~\u002F.sidecar\u002Fmaster)\n```\n\nEach plugin's tier is the **Tier** column below; the classification SSOT is [`.claude-plugin\u002Fprofiles.json`](.claude-plugin\u002Fprofiles.json). This rides on Claude Code's own plugin enable\u002Fdisable — **not** an in-guard opt-out — so an enabled guard stays unconditional (`@D s11`). State lives in `~\u002F.sidecar\u002Fprofile` + `~\u002F.sidecar\u002Fplugin-overrides.json`; `sidecar-lint` flags any plugin missing a tier so the classification stays complete (`@D s7`).\n\n### `master` tier — creator-only\n\nThe `personal` tier is dancinlab-specific but anyone can opt in via `full`. The **`master` tier is genuinely creator-only**: a `master`-tier plugin enables **only while the `~\u002F.sidecar\u002Fmaster` marker exists** — force-disabled otherwise, *even under the `full`\u002F`master` profile* (a per-plugin `enable` override still escapes it). The marker isn't shipped, so public installs never get `master` plugins; the creator runs `sidecar master on` once to mint it. Current `master`-tier members: `stdlib-ssot-guard` (PreToolUse advisory) + `stdlib` (`\u002Fstdlib check`·`promote` skill) — together the g61 cross-repo SSOT enforcement pair, dancinlab workflow only.\n\n## Commands\n\nAll slash commands at a glance, grouped by purpose. Each is backed by a plugin in the table below.\n\n```\n# ── Discovery ───────────────────────────────────────────────\n\u002Fkick:kick \u003Cseed>                 hexa kick — gap-breakthrough \u002F discovery engine\n\u002Fgap:gap [scope|full]             42-lens multi-axis gap sweep (8 families)\n\u002Fbrainstorm:brainstorm \u003Cseed>     width-first idea exhaustion (rounds until depletion)\n\n# ── Fan-out \u002F loop ──────────────────────────────────────────\n\u002Fcycle:cycle                      autonomous loop: self-enumerate (empty → seed from `## deferred`) → plan → fan-out → auto-continue to depletion\n\u002Fcycle:cycle-full \u003Cgoal>          \u002Fcycle:cycle + a one-time phase-0 depletion brainstorm, then auto-continue to depletion\n\u002Fcycle:cycle-loop                 \u002Fcycle:cycle via the \u002Floop skill — explicit continuous-intent pacing surface (same depletion end-state)\n\u002Fcycle:cycle-full-loop            \u002Fcycle:cycle-full once, then \u002Floop \u002Fcycle:cycle — drains to the same depletion condition\n\u002Fstep-by-step:step-by-step \u003Ctask>  sequential runbook: plan → auto-run steps in order (alias \u002Fstep-by-step:sbs)\n\n# ── Dispatch ────────────────────────────────────────────────\n\u002Fpool:pool \u003Cargs>                 host roster + remote exec on sidekick hosts\n\u002Fcloud:cloud \u003Cargs>               hexa cloud — rented-GPU pod dispatch (runpod \u002F vast.ai)\n\u002Fmicro-exp:micro-exp [scope]      context-driven micro-experiment sweep (pods → monitor → parse → atlas auto-fold)\n\n# ── Cross-project ───────────────────────────────────────────\n\u002Fdomain:domain \u003Ctask>             \u003CNAME>.md snapshot + \u003CNAME>.log.md checkbox-task log\n\u002Fdomain:domain list               repo-wide domain index — DOMAINS.tape roster (NAME→path, domains anywhere)\n\u002Fdomain:domain list --sync        reconcile DOMAINS.tape with disk (bootstraps the roster)\n#                                 cross-repo handoff → `cd \u003Ctarget> && \u002Fdomain:domain set INBOX`\n\n# ── Verify \u002F atlas \u002F help ───────────────────────────────────\n\u002Fverify:verify \u003Cargs>             hexa verify — tier rubric (🔵🟢🟡🟠🔴⚪)\n\u002Fatlas:atlas \u003Cargs>               hexa atlas — SSOT surface (lookup · stats · register, PR-only landing)\n\u002Fhexa-help:hexa-help [verb]       hexa --help (top-level catalog or per-verb signature)\n\n# ── Research \u002F generate ─────────────────────────────────────\n\u002Fresearch:arxiv \u003Cq>               arXiv API search \u002F id lookup\n\u002Fresearch:yt \u003Curl>                YouTube caption transcript extract\n\u002Fimagine:imagine \u003Cpf> \u003Cout>       AI image gen (fal backend · gpt-image-2 pinned)\n\u002Fpaper:paper \u003Cargs>               arxiv LaTeX scaffolder (new·sample·fig·compile·lint·list)\n\n# ── Account \u002F credentials ───────────────────────────────────\n\u002Fquota:quota [verb]               Claude 5h\u002F7d usage + multi-account registry · switch · nicknames\n\u002Fsecret:secret \u003Cargs>             macOS Keychain-backed credential CLI (dual-channel sync)\n\n# ── Session \u002F meta ──────────────────────────────────────────\n\u002Finject:inject  (\u002Finject:ij)      sidecar sync + inject commons.tape\u002Fproject.tape THIS turn\n\u002Fship:ship -m \"\u003Cmsg>\" …           atomic commit + push + sidecar sync\n\u002Fsidecar:sidecar \u003Cverb>           marketplace CLI — init · sync · sign · profile · enable · disable · reset\n\u002Fprefs:prefs \u003Caxis> \u003Clang>        language prefs (code · docs · response)\n\u002Feasy:easy                        friendly 7-element response style\n\u002Fcheck:check                      task dashboard (domain log · open PRs · git · merges)\n\u002Fend:end                          session-closure safety check (dangling-residue dashboard)\n\u002Fquestion:question (\u002Fquestion:q) \u003Ctxt>  quick side-question, no task pivot (alias for \u002Fbtw)\n\n# ── Auto-fire hooks (no command) ────────────────────────────\n# DENY (hard block):\n#   hexa-native    .py\u002F.sh writes in project.tape repos → re-issue as .hexa\n#   plist-guard    .plist writes\n#   cloud-guard    runpodctl\u002Fvastai exec\u002Fssh → hexa cloud (g8)\n#   verify-guard   wolframscript \u002F inline-sympy → hexa verify (g5)\n#   ai-api-guard   curl AI-host \u002F inline AI-SDK → the CLI wrapper (g50)\n#   sign-guard     edits to commons.tape\u002Fproject.tape\u002F.gitignore until `sidecar sign` (s13)\n#   git-guard      force-push (+ stale-base push advisory)\n#   tape-lint      .tape edits (fields · length · authoring-language)\n# REWRITE \u002F ROUTE:\n#   pool-route     heavy Bash → ssh to a pool host\n#   pr-cycle       `gh pr create` → appends && gh pr merge + worktree clean (g47)\n#   output-trim    >8000-char Bash stdout → dedup + truncate\n# ADVISORY (non-blocking additionalContext):\n#   sidecar-lint   git-commit: stale-history · hardpath · version drift · CHANGELOG · profiles tier · mcp-ban\n#   workdir-guard  working tree shared by ≥2 agents → use a worktree (s-shared)\n#   memory-lint    MEMORY.md pileup \u002F long lines → archive\n#   inbox-log-lint INBOX.log.md pileup → archive\n#   limit-guard    subagent session-limit → checkpoint directive\n#   monitor-guard  bg\u002Flong shell launch → detach + log + Monitor (g10, rate-limit survival)\n#   pod-monitor    GPU pod fire → SAVE_POD \u002F detach reminders (g57)\n#   s9-guard       Mac load-check cmds → exclude claude PIDs (s9)\n# SESSION lifecycle:\n#   easy-auto · quota-autoadd · worktree-gc · sidecar-auto-sync · subagent-route[POC]\n```\n\n## Plugins\n\n63 plugins across `{hook · command · skill}` — one concept each (28 `core` · 17 `hexa` · 18 `personal`). The **Tier** column is the [enable profile](#profiles) a plugin belongs to.\n\n| Name | Kind | Tier | Version | Summary |\n|---|---|---|---|---|\n| [`brainstorm`](skills\u002Fbrainstorm\u002F) | command + skill | `core` | 0.1.1 | Iterative brainstorming |\n| [`bypass`](skills\u002Fbypass\u002F) | skill | `core` | 0.2.1 | Anti-punt |\n| [`check`](skills\u002Fcheck\u002F) | command + skill | `core` | 0.1.0 | Task dashboard skill |\n| [`cycle`](skills\u002Fcycle\u002F) | command + skill | `core` | 0.7.0 | Autonomous work-loop driver (whole family auto-drains to depletion) |\n| [`domain`](skills\u002Fdomain\u002F) | command + skill | `core` | 0.8.7 | Maintain UPPERCASE \u003CNAME>.md (snapshot = final-goal milestone checkboxes) + sister \u003CNAME>.log.md (append-only step log) · `\u002Fdomain list` repo-wide index (DOMAINS.tape roster — domains at any path)… |\n| [`end`](skills\u002Fend\u002F) | command + skill | `core` | 0.2.0 | Session closure safety check |\n| [`gap`](commands\u002Fgap\u002F) | command | `core` | 0.2.0 | multi-axis gap exploration |\n| [`gh-stack`](skills\u002Fgh-stack\u002F) | skill | `core` | 0.1.1 | Stacked-PR workflow skill |\n| [`git-guard`](hooks\u002Fgit-guard\u002F) | hook | `core` | 0.5.0 | PreToolUse(Bash) git-push safety guard, in hexa-lang (`_git_guard.hexa`, via `hexa run`) |\n| [`limit-guard`](hooks\u002Flimit-guard\u002F) | hook | `core` | 0.1.3 | PostToolUse(Task) hook, implemented in hexa-lang (`_limit_guard.hexa`, invoked via `hexa run`) |\n| [`memory-lint`](hooks\u002Fmemory-lint\u002F) | hook | `core` | 0.1.0 | PostToolUse(Write\\|Edit) advisory for the auto-memory index file (`memory\u002FMEMORY.md`), implemented in hexa-lang (`_memo… |\n| [`drift-guard`](hooks\u002Fdrift-guard\u002F) | hook | `core` | 0.1.1 | PostToolUse(Write\\|Edit) advisory — design-drift → memory sync; 0.1.1 limits sentinel scan to source-code extensions + skips sidecar repo's own `\u002Fhooks\u002Fdrift-guard\u002F` tree (kills self-trigger noise from prose docs that documented the marker) |\n| [`throttle-guard`](hooks\u002Fthrottle-guard\u002F) | hook | `core` | 0.1.0 | PostToolUse(Task\\|Agent) cross-session transient-throttle coordinator — shared cooldown marker + jitter backoff + WIDTH cut (distinct from limit-guard's usage cap) |\n| [`monitor-guard`](hooks\u002Fmonitor-guard\u002F) | hook | `core` | 0.1.5 | PreToolUse(Bash) advisory for bg\u002Flong shell launches — detach + log + Monitor-on-log (commons @D g10); 0.1.5 — `has_log` token-position via `_has_log_pos`+`_redirect_targets` (quote-aware `>`\u002F`>>` target + `tee` file-arg + `\u003C\u003C` heredoc) — commands merely mentioning `.log` no longer satisfy the sink check, finishing the substring → token-position sweep |\n| [`output-trim`](hooks\u002Foutput-trim\u002F) | hook | `core` | 0.1.3 | PreToolUse(Bash) stdout trimmer |\n| [`pool`](skills\u002Fpool\u002F) | command + skill | `core` | 0.2.2 | wraps the `pool` CLI (host roster + remote exec |\n| [`prefs`](commands\u002Fprefs\u002F) | command | `core` | 0.4.0 | \u002Fprefs view\u002Fset language prefs (code · docs · response) — writes the fixed prefs.json SSOT |\n| [`prefs-hook`](hooks\u002Fprefs-hook\u002F) | hook | `core` | 0.1.0 | UserPromptSubmit+SessionStart+PreCompact+PostCompact — injects language prefs from the fixed SSOT (prefs split) |\n| [`question`](skills\u002Fquestion\u002F) | command + skill | `core` | 0.2.0 | Quick side-question alias for Claude Code's built-in `\u002Fbtw` |\n| [`quota`](skills\u002Fquota\u002F) | command + skill | `core` | 0.10.0 | Claude account 5h\u002F7d usage limits + multi-account registry + live credential swap + per-account nicknames |\n| [`quota-autoadd`](hooks\u002Fquota-autoadd\u002F) | hook | `core` | 0.1.1 | SessionStart hook |\n| [`research`](skills\u002Fresearch\u002F) | command + skill | `core` | 0.2.4 | Research-fetch tools |\n| [`secret`](skills\u002Fsecret\u002F) | command + skill | `core` | 0.4.1 | wraps the `secret` CLI (macOS Keychain-backed credentials, dancinlab\u002Fsecret 0.4.0, dual-channel sync) |\n| [`sidecar`](commands\u002Fsidecar\u002F) | command | `core` | 0.5.0 | thin wrapper over the `sidecar` marketplace CLI (host-local, on PATH via `hx install sidecar`) |\n| [`step-by-step`](commands\u002Fstep-by-step\u002F) | command | `core` | 0.1.0 | plan-first sequential runbook |\n| [`workdir-guard`](hooks\u002Fworkdir-guard\u002F) | hook | `core` | 0.1.0 | SessionStart advisory (hexa-lang `_workdir_guard.hexa`, via `hexa run`) that fires once per session, and only when the… |\n| [`worktree-guard`](hooks\u002Fworktree-guard\u002F) | hook | `core` | 0.1.0 | PreToolUse(Bash) advisory on `git worktree add` — durable-worktree drill: commit+push promptly, a sibling prune \u002F sync \u002F tmp-reaper can delete the worktree + uncommitted edits |\n| [`worktree-gc`](hooks\u002Fworktree-gc\u002F) | hook | `core` | 0.1.0 | SessionStart hook that prunes merged-but-undeleted LINKED git worktrees in the cwd repo, implemented in hexa-lang (`_w… |\n| [`atlas`](skills\u002Fatlas\u002F) | command + skill | `hexa` | 0.1.1 | wraps `hexa atlas` (atlas SSOT surface) |\n| [`cloud`](skills\u002Fcloud\u002F) | command + skill | `hexa` | 0.3.5 | wraps `hexa cloud` (runpod \u002F vast.ai dispatch); 0.3.5 documents the atomic `hexa cloud fire \u003Chost> [--log \u003Cpath>] -- \u003Cargv>` workflow + `__MONITOR_HANDLE__={…}` JSON-line contract — both SHIPPED upstream (hexa-lang PR #1306 + #1309) |\n| [`cloud-guard`](hooks\u002Fcloud-guard\u002F) | hook | `hexa` | 0.2.2 | PreToolUse(Bash) hard block for raw rented-GPU pod dispatch (commons @D g8) |\n| [`hexa-help`](skills\u002Fhexa-help\u002F) | command + skill | `hexa` | 0.2.1 | wraps `hexa --help` (no arg, top-level catalog) or `hexa \u003Cverb> --help` (verb-specific) |\n| [`hexa-lsp`](hooks\u002Fhexa-lsp\u002F) | hook | `hexa` | 0.1.1 | Wire the hexa-lang LSP server (`hexa lsp`) for `.hexa` files |\n| [`hexa-native`](hooks\u002Fhexa-native\u002F) | hook | `hexa` | 0.3.2 | PreToolUse(Write\\|Edit\\|NotebookEdit\\|Bash) hard block for `.py` \u002F `.sh` writes inside any project rooted at a directory… |\n| [`hxc-lsp`](hooks\u002Fhxc-lsp\u002F) | hook | `hexa` | 0.1.0 | Wire `hxc-lsp` (HXC hexa-canonical wire\u002Fstorage format LSP — diagnostics + hover) for `.hxc` files |\n| [`kick`](skills\u002Fkick\u002F) | command + skill | `hexa` | 0.2.1 | runs `hexa kick --seed \"\u003Cseed>\"` (hexa-lang gap-breakthrough \u002F discovery engine, aliased to `hexa drill`) |\n| [`kosmos-lsp`](hooks\u002Fkosmos-lsp\u002F) | hook | `hexa` | 0.1.0 | Wire `kosmos-lsp` (kosmos multimodal knowledge-anchor manifest LSP — diagnostics + hover) for `.kosmos` files |\n| [`micro-exp`](skills\u002Fmicro-exp\u002F) | command + skill | `hexa` | 0.2.0 | context-driven micro-experiment sweep orchestrator (self-enumerate → pod budget → monitor → parse → atlas auto-fold) |\n| [`n6-lsp`](hooks\u002Fn6-lsp\u002F) | hook | `hexa` | 0.1.0 | Wire `n6-lsp` (NEXUS-6 knowledge-atlas grammar LSP — diagnostics + hover) for `.n6` files |\n| [`paper`](skills\u002Fpaper\u002F) | command + skill | `hexa` | 0.5.3 | arxiv-style LaTeX paper scaffolder |\n| [`pod-monitor`](hooks\u002Fpod-monitor\u002F) | hook | `hexa` | 0.1.3 | PreToolUse(Bash) advisory hook for GPU pod fires (`hexa cloud nohup` \u002F `fire` \u002F `run`); 0.1.3 token-position match (no longer fires on commit\u002Fgrep mentions) |\n| [`tape-lint`](hooks\u002Ftape-lint\u002F) | hook | `hexa` | 0.5.1 | PreToolUse(Edit\\|Write) deny for `.tape` edits, implemented in hexa-lang (`_tape_lint.hexa`, invoked via `hexa run` |\n| [`tape-lsp`](hooks\u002Ftape-lsp\u002F) | hook | `hexa` | 0.1.1 | Wire `tape-lsp` (canonical .tape v1.2 LSP |\n| [`verify`](skills\u002Fverify\u002F) | command + skill | `hexa` | 0.2.1 | runs `hexa verify \"$@\"` (cross-project tier rubric, TECS-L-aligned) |\n| [`verify-guard`](hooks\u002Fverify-guard\u002F) | hook | `hexa` | 0.1.2 | PreToolUse(Bash) hard block for raw verification-tool usage cited as primary evidence, implemented in hexa-lang (`_ver… |\n| [`ai-api-guard`](hooks\u002Fai-api-guard\u002F) | hook | `personal` | 0.1.3 | PreToolUse(Bash) hard block for raw AI-API calls when a sidecar CLI wraps the same operation, implemented in hexa-lang… |\n| [`commons`](hooks\u002Fcommons\u002F) | hook | `personal` | 0.10.13 | UserPromptSubmit + SessionStart + PreCompact + PostCompact hook |\n| [`easy`](skills\u002Feasy\u002F) | command + skill | `personal` | 0.1.2 | Easy (friendly) response style |\n| [`easy-auto`](hooks\u002Feasy-auto\u002F) | hook | `personal` | 0.1.2 | SessionStart + UserPromptSubmit + PreCompact + PostCompact hook |\n| [`imagine`](skills\u002Fimagine\u002F) | command + skill | `personal` | 0.2.3 | generic AI image generator |\n| [`inbox-log-lint`](hooks\u002Finbox-log-lint\u002F) | hook | `personal` | 0.1.0 | PostToolUse(Write\\|Edit) advisory for the INBOX domain log (`INBOX.log.md`) |\n| [`inject`](skills\u002Finject\u002F) | command + skill | `personal` | 0.2.0 | Immediately inject the latest sidecar commons.tape + project.tape into the CURRENT session and sync the local install… |\n| [`plist-guard`](hooks\u002Fplist-guard\u002F) | hook | `personal` | 0.1.2 | PreToolUse(Write\\|Edit\\|NotebookEdit) hard block for `.plist` writes, implemented in hexa-lang (`_plist_guard.hexa`, inv… |\n| [`pool-route`](hooks\u002Fpool-route\u002F) | hook | `personal` | 0.7.4 | PreToolUse(Bash) pool auto-router + sign-local single-gate; 0.7.4 — `npm`\u002F`pnpm`\u002F`yarn` are LOCAL-bound (cwd-dependent, removed from heavy_words + added to local-bound early-_allow) so `npm install` in a Mac-only workdir no longer fails preflight on every pool host |\n| [`pr-cycle`](commands\u002Fpr-cycle\u002F) | command | `personal` | 0.4.0 | \u002Fpr-cycle one-shot PR cycle (push + create; the pr-cycle-hook plugin appends merge + worktree-clean) |\n| [`pr-cycle-hook`](hooks\u002Fpr-cycle-hook\u002F) | hook | `personal` | 0.1.0 | PreToolUse(Bash) router — appends merge + worktree\u002Fbranch cleanup to `gh pr create` (commons @D g47; pr-cycle split) |\n| [`project-tape`](hooks\u002Fproject-tape\u002F) | hook | `personal` | 0.2.1 | PreCompact + PostCompact hook |\n| [`s9-guard`](hooks\u002Fs9-guard\u002F) | hook | `personal` | 0.1.0 | PreToolUse(Bash) advisory hook for load-assessment commands (project.tape @D s9) |\n| [`ship`](skills\u002Fship\u002F) | command + skill | `personal` | 0.3.2 | Atomic ship tail for sidecar plugin changes |\n| [`sidecar-auto-sync`](hooks\u002Fsidecar-auto-sync\u002F) | hook | `personal` | 0.2.0 | SessionStart hook that runs `sidecar sync` once per Claude Code session, implemented in hexa-lang (`_sidecar_auto_sync… |\n| [`sidecar-lint`](hooks\u002Fsidecar-lint\u002F) | hook | `personal` | 0.7.0 | PreToolUse(Bash) auto-lint that fires on `git commit` in any Claude Code marketplace plugin pack (any repo with .claud… |\n| [`sign-guard`](hooks\u002Fsign-guard\u002F) | hook | `personal` | 0.1.6 | PreToolUse(Write\\|Edit\\|NotebookEdit\\|Bash) sign-gate for sign-gated files (commons.tape · project.tape · .gitignore), in hexa-lang — agent edits need a fresh `sidecar sign \u003Ckey>` token; hard-denies self-mint |\n| [`subagent-route`](hooks\u002Fsubagent-route\u002F) | hook | `personal` | 0.1.0 | [POC] PreToolUse(Task\\|Agent) observation hook + SessionStart observation-log snapshot, implemented in hexa-lang (`_sub… |\n\n## Governance\n\nSidecar's own identity + governance lives in [`project.tape`](project.tape) (also reachable via `CLAUDE.md`). Cross-project `do` \u002F `dont` rules ride inside the `commons` hook plugin and auto-inject at SessionStart + PreCompact + PostCompact. Local sidecar decisions (concept separation, ship cycle, evidence-before-ship, cross-project carrier) are recorded in [`DESIGN.log.md`](DESIGN.log.md) as numbered decisions; [`DESIGN.md`](DESIGN.md) is the live-rules pointer.\n\n## Policies\n\nhonesty 정책 2종 — 자율 작업이 *거짓 주장*을 못 하게 막는 cross-cutting 룰. 둘 다 같은 형태: \"X 주장은 증명해야 하는 것이지 기본값이 아니다.\"\n\n| 정책 | 무엇의 정직성 | 한 줄 |\n|---|---|---|\n| [`LATTICE_POLICY.md`](LATTICE_POLICY.md) | *한계* 주장 | 천장은 진짜 물리\u002F수학 한계여야 한다 (편의 숫자 금지) — commons `g25`·`g26` |\n| [`CLOSURE_POLICY.md`](CLOSURE_POLICY.md) | *닫힘* 주장 | 도메인 \"완료\"는 fresh·live SSOT 에서만 판정 · perpetual 도메인은 절대 종료 안 됨 — cycle `@D ssot_freshness`·`perpetual_domain` + domain stale-guard |\n\n`CLOSURE_POLICY` 는 anima `LIFE` 도메인이 stale untracked 사본 + perpetual 오취급으로 잘못 `✅ 100% depleted` 를 외친 사건에서 도출됐다 (cycle 0.7.7 + domain 0.8.8 이 enforce).\n\n## Reference\n\n- [`project.tape`](project.tape) — sidecar's identity + governance (linked as `CLAUDE.md`).\n- [`DESIGN.md`](DESIGN.md) \u002F [`DESIGN.log.md`](DESIGN.log.md) — live design-rules pointer + decision audit trail.\n- [`LATTICE_POLICY.md`](LATTICE_POLICY.md) \u002F [`CLOSURE_POLICY.md`](CLOSURE_POLICY.md) — honesty policies (limit-claim · closure-claim) — see [Policies](#policies).\n- [`CHANGELOG.md`](CHANGELOG.md) — chronological log of notable changes (one entry per ship batch).\n- [`GH-STACK.md`](GH-STACK.md) \u002F [`GH-STACK.log.md`](GH-STACK.log.md) — stacked PR workflow reference + enablement history.\n\n## License\n\nMIT.\n","sidecar 是一个 Claude Code 插件包，通过侧挂方式为项目添加防护栏、命令和技能，而无需修改原有代码。其核心功能包括严格的概念分离（每个插件仅对应一种类型：钩子、命令或技能），并通过 `project.tape` 文件在项目根目录中定义项目级的身份与治理规则。此外，sidecar 还支持跨项目的“do”\u002F“dont”策略层。该项目适合需要增强现有应用功能但又希望保持代码整洁的开发者使用，特别适用于那些希望采用模块化方式扩展功能而不破坏原有架构的场景。",2,"2026-06-11 03:57:22","CREATED_QUERY"]