$npx -y skills add mvanhorn/cli-printing-press --skill public-param-goldenPrinting Press CLI for Public Param Golden. Public parameter name golden fixture
| 1 | # Public Param Golden — Printing Press CLI |
| 2 | |
| 3 | ## Prerequisites: Install the CLI |
| 4 | |
| 5 | This skill drives the `public-param-golden-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first: |
| 6 | |
| 7 | 1. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows: |
| 8 | ```bash |
| 9 | npx -y @mvanhorn/printing-press-library install public-param-golden --cli-only |
| 10 | ``` |
| 11 | 2. Verify: `public-param-golden-pp-cli --version` |
| 12 | 3. Ensure the reported install directory is on `$PATH` for the agent/runtime that will invoke this skill. |
| 13 | |
| 14 | If the `npx` install fails before this CLI has a public-library category, install Node or use the category-specific Go fallback after publish. |
| 15 | |
| 16 | If `--version` reports "command not found" after install, the runtime cannot see the binary directory on `$PATH`. Do not proceed with skill commands until verification succeeds. |
| 17 | |
| 18 | Public parameter name golden fixture |
| 19 | |
| 20 | ## Command Reference |
| 21 | |
| 22 | **stores** — Store lookup operations |
| 23 | |
| 24 | - `public-param-golden-pp-cli stores create` — Create a store record |
| 25 | - `public-param-golden-pp-cli stores find` — Find nearby stores by address |
| 26 | |
| 27 | |
| 28 | ### Finding the right command |
| 29 | |
| 30 | When you know what you want to do but not which command does it, ask the CLI directly: |
| 31 | |
| 32 | ```bash |
| 33 | public-param-golden-pp-cli which "<capability in your own words>" |
| 34 | ``` |
| 35 | |
| 36 | `which` resolves a natural-language capability query to the best matching command from this CLI's curated feature index. Exit code `0` means at least one match; exit code `2` means no confident match — fall back to `--help` or use a narrower query. |
| 37 | |
| 38 | ## Auth Setup |
| 39 | |
| 40 | No authentication required. |
| 41 | |
| 42 | Run `public-param-golden-pp-cli doctor` to verify setup. |
| 43 | |
| 44 | ## Agent Mode |
| 45 | |
| 46 | Add `--agent` to any command. Expands to: `--json --compact --no-input --no-color --yes`. |
| 47 | |
| 48 | - **Pipeable** — JSON on stdout, errors on stderr |
| 49 | - **Filterable** — `--select` keeps a subset of fields. Dotted paths descend into nested structures; arrays traverse element-wise. Critical for keeping context small on verbose APIs: |
| 50 | |
| 51 | ```bash |
| 52 | public-param-golden-pp-cli stores create --store-code example-value --agent --select id,name,status |
| 53 | ``` |
| 54 | - **Previewable** — `--dry-run` shows the request without sending |
| 55 | - **Offline-friendly** — sync/search commands can use the local SQLite store when available |
| 56 | - **Non-interactive** — never prompts, every input is a flag |
| 57 | - **Explicit retries** — use `--idempotent` only when an already-existing create should count as success |
| 58 | |
| 59 | ### Response envelope |
| 60 | |
| 61 | Commands that read from the local store or the API wrap output in a provenance envelope: |
| 62 | |
| 63 | ```json |
| 64 | { |
| 65 | "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."}, |
| 66 | "results": <data> |
| 67 | } |
| 68 | ``` |
| 69 | |
| 70 | Parse `.results` for data and `.meta.source` to know whether it's live or local. A human-readable `N results (live)` summary is printed to stderr only when stdout is a terminal AND no machine-format flag (`--json`, `--csv`, `--compact`, `--quiet`, `--plain`, `--select`) is set — piped/agent consumers and explicit-format runs get pure JSON on stdout. |
| 71 | |
| 72 | ## Paths and state |
| 73 | |
| 74 | Agents should treat the CLI's path resolver as part of the runtime contract: |
| 75 | |
| 76 | - Use `--home <dir>` for one invocation, or set `PUBLIC_PARAM_GOLDEN_HOME=<dir>` to relocate all four path kinds under one root. |
| 77 | - Use per-kind env vars only when a specific kind must diverge: `PUBLIC_PARAM_GOLDEN_CONFIG_DIR`, `PUBLIC_PARAM_GOLDEN_DATA_DIR`, `PUBLIC_PARAM_GOLDEN_STATE_DIR`, `PUBLIC_PARAM_GOLDEN_CACHE_DIR`. |
| 78 | - Resolution order is per-kind env var, `--home`, `PUBLIC_PARAM_GOLDEN_HOME`, XDG (`XDG_CONFIG_HOME`, `XDG_DATA_HOME`, `XDG_STATE_HOME`, `XDG_CACHE_HOME`), then platform defaults. |
| 79 | - `config` contains settings like `config.toml` and profiles. `data` contains `credentials.toml`, `data.db`, cookies, and auth sidecars. `state` contains persisted queries, jobs, and `teach.log`. `cache` contains regenerable HTTP/cache files. |
| 80 | - Stored secrets live in `credentials.toml` under the data dir. Existing legacy `config.toml` secrets are read for compatibility and leave `config.toml` on the first auth write. |
| 81 | - Run `public-param-golden-pp-cli doctor --fail-on warn` to surface path and credential-location warnings. `agent-context` exposes a schema v4 `paths` block for agents that need the resolved dirs. |
| 82 | - For MCP, pass relocation through the MCP host config. The MCP binary does not inherit CLI flags: |
| 83 | |
| 84 | ```json |
| 85 | { |
| 86 | "mcpServers": { |
| 87 | "public-param-golden": { |
| 88 | "command": "public-param-golden-pp-mcp", |
| 89 | "env": { |
| 90 | "PUBLIC_PARAM_GOLDEN_HOME |