Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fcc7226c3b | ||
|
|
a8011c3d4d | ||
|
|
08f90c6df3 |
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/ask-matt
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/chief-of-staff
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/claude-handoff
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/code-review
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/codebase-design
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/diagnosing-bugs
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/domain-modeling
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/find-skills
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/git-guardrails-claude-code
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/grill-me
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/grill-with-docs
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/grilling
|
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
name: grilling
|
||||||
|
description: Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.
|
||||||
|
---
|
||||||
|
|
||||||
|
> **Authored override.** Extracted 2026-10-18 from `mattpocock/skills` (identical to upstream at extraction) into the command-center repo so Frank can customize it. Removed from the `skills` CLI global store (`~/.agents/.skill-lock.json` pruned) so `skills update -g` never resurrects a duplicate. Edits to this file are repo prose: branch → PR → Frank OK.
|
||||||
|
|
||||||
|
Interview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it.
|
||||||
|
|
||||||
|
Work the tree in **rounds**. The **frontier** is every decision whose prerequisites are already settled: the questions you can ask _now_ without guessing at answers you haven't heard yet. Ask the whole frontier in one round: number each question and give your recommended answer. Then wait for the user's answers before the next round.
|
||||||
|
|
||||||
|
Format a round like so:
|
||||||
|
|
||||||
|
```
|
||||||
|
❓ **Q1** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
||||||
|
|
||||||
|
➡️ <your recommended answer>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
❓ **Q2** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
||||||
|
|
||||||
|
➡️ <your recommended answer>
|
||||||
|
```
|
||||||
|
|
||||||
|
Word each question so "yes" accepts your recommended answer.
|
||||||
|
|
||||||
|
Each round the user answers reshapes the tree: settled decisions push the frontier outward and unblock questions that depended on them. Recompute the frontier and ask the next round. A question whose answer depends on another question still open in this round belongs to a _later_ round, not this one.
|
||||||
|
|
||||||
|
Finding _facts_ is your job, never the user's. When a frontier question needs a fact from the environment (filesystem, tools, etc.), dispatch a sub-agent to find it; don't ask the user for anything you could look up yourself. Don't block on it: a running exploration is an unsettled prerequisite, so only the questions downstream of it wait for the sub-agent to report; ask the rest of the frontier now. The _decisions_ are the user's: put each to them and wait.
|
||||||
|
|
||||||
|
The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Do not act on it until the user confirms you have reached a shared understanding.
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/handoff
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/implement
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/implement-spec
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/improve-codebase-architecture
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/loop-me
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/migrate-to-shoehorn
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/pr
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/prototype
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/research
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/retro
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/scaffold-exercises
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/setup-matt-pocock-skills
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/setup-pre-commit
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/setup-ts-deep-modules
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/tdd
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/teach
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/to-questionnaire
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/to-spec
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/to-tickets
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/triage
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/wait-what
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/wayfinder
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/wizard
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/writing-beats
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/writing-for-agents
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/writing-fragments
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/blank/.agents/skills/writing-shape
|
|
||||||
@@ -1,44 +1,63 @@
|
|||||||
---
|
---
|
||||||
type: reference
|
type: reference
|
||||||
title: omp Skill Store Wiring
|
title: omp Skill Store Wiring
|
||||||
description: How omp's agent/skills directory is symlinked into the skills CLI global store, and where lockfile provenance lives.
|
description: Division of skill tiers on Dank workstations — skills CLI global store, omp agents provider, and the authored repo tier.
|
||||||
tags:
|
tags:
|
||||||
- skills
|
- skills
|
||||||
- symlinks
|
|
||||||
- provisioning
|
- provisioning
|
||||||
|
- dotfiles
|
||||||
timestamp: 2026-10-18
|
timestamp: 2026-10-18
|
||||||
verified: 2026-10-18
|
verified: 2026-10-18
|
||||||
---
|
---
|
||||||
|
|
||||||
# omp Skill Store Wiring
|
# omp Skill Store Wiring
|
||||||
|
|
||||||
omp is NOT a registered agent in the `skills` CLI (79-agent registry checked in
|
Three tiers, one owner each:
|
||||||
`dist/cli.mjs` 2026-10-18; see [Agent Support](/tools/vercel-labs-skills/agent-support.md)),
|
|
||||||
so `skills add` never writes to `~/.omp/agent/skills/` on its own. The wiring is
|
|
||||||
manual, retrofitted 2026-10-18:
|
|
||||||
|
|
||||||
- **Canonical store:** `~/.agents/skills/<name>/` — real files, written by
|
| Tier | Path | Owner | Content |
|
||||||
`npx skills add <owner>/<repo> --all -g` (universal agent, global scope).
|
|---|---|---|---|
|
||||||
- **Provenance:** `~/.agents/.skill-lock.json` (store lockfile, version 3): per
|
| Canonical store | `~/.agents/skills/` | `skills` CLI | upstream skills, 38 as of 2026-10-18 (all `mattpocock/skills`) |
|
||||||
skill `source` (e.g. `mattpocock/skills`, `vercel-labs/skills`), `skillPath`,
|
| Provenance | `~/.agents/.skill-lock.json` | `skills` CLI | v3 lockfile: `source`, `skillPath`, `skillFolderHash` per skill |
|
||||||
`skillFolderHash`, timestamps. 39 entries as of 2026-10-18: 38 from
|
| Authored | `agent/skills/` (this repo) | Frank, via PR | hand-customized overrides; today only `grilling` |
|
||||||
`mattpocock/skills`, `find-skills` from `vercel-labs/skills`.
|
|
||||||
- **omp tier:** every entry in `agent/skills/` (this repo) is a **symlink** to
|
|
||||||
`~/.agents/skills/<name>` — 39 links. `manage_skill` writes real dirs into the
|
|
||||||
separate tier `agent/managed-skills/`; that tier is untouched by this scheme.
|
|
||||||
|
|
||||||
## Consequences
|
## How omp loads them
|
||||||
|
|
||||||
- `skills update -g` refreshes every skill for omp through the links; the repo
|
omp is NOT a registered agent in the `skills` CLI (79-agent registry checked
|
||||||
records only the link set (which skills are enabled), never content.
|
2026-10-18; see [Agent Support](/tools/vercel-labs-skills/agent-support.md)) —
|
||||||
- A fresh workstation needs two steps: `npx skills add mattpocock/skills --all -g`
|
`skills add` never writes anywhere under `~/.omp`. Instead omp's own `agents`
|
||||||
(+ `find-skills` from `vercel-labs/skills`), then re-create the symlinks;
|
provider reads the store **directly**: `skills.enableAgentsUser` (default true)
|
||||||
`git pull` alone yields dangling links until the store exists.
|
loads `~/.agents/skills/*/SKILL.md`. No per-skill symlinks in the repo — the
|
||||||
- `skills ls` from a repo whose layout contains `agent/skills` mislabels those
|
repo does not mirror the store; it only holds authored overrides.
|
||||||
links as Eve project skills (path collision with Eve's `agent/skills` dir);
|
|
||||||
harmless attribution noise.
|
Precedence (omp `omp://skills.md`): authored `agent/skills/` (native, priority
|
||||||
|
100) beats the agents provider; identical copies collapse by realpath, differing
|
||||||
|
same-named copies survive namespaced (`agents/<name>`) with a startup warning.
|
||||||
|
Therefore: **when authoring an override, remove the skill from the store**
|
||||||
|
(`npx skills remove <name> -g`) so the lockfile stays truthful and no
|
||||||
|
namespaced twin haunts the listing. `grilling` was extracted this way 2026-10-18.
|
||||||
|
|
||||||
|
## Updating upstream skills
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx -y skills update -g # refreshes everything the lockfile tracks
|
||||||
|
npx skills check # drift report vs GitHub tree SHAs
|
||||||
|
```
|
||||||
|
|
||||||
|
Fresh workstation (omp side is two commands — store restore + authored tier
|
||||||
|
arrives with the repo clone):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx -y skills add mattpocock/skills --all -g
|
||||||
|
npx -y skills add vercel-labs/skills --skill find-skills --agent universal -g
|
||||||
|
npx -y skills remove grilling -g # authored copy ships in the repo
|
||||||
|
```
|
||||||
|
|
||||||
|
## Managed tier
|
||||||
|
|
||||||
|
`agent/managed-skills/` (auto-learn, priority 5) is separate and untouched by
|
||||||
|
all of the above; authored skills always win name collisions against it.
|
||||||
|
|
||||||
## Related
|
## Related
|
||||||
|
|
||||||
* [Lock File](/tools/vercel-labs-skills/lock-file.md) — lockfile format and update checking
|
* [Lock File](/tools/vercel-labs-skills/lock-file.md) — hash-based update checking
|
||||||
* [Installation Scope](/tools/vercel-labs-skills/installation-scope.md) — symlink vs `--copy` methods
|
* [Agent Support](/tools/vercel-labs-skills/agent-support.md) — full CLI agent registry
|
||||||
|
|||||||
Reference in New Issue
Block a user