turbo
c05ed3dc - docs: Correct verified inaccuracies in the Turborepo Agent Skill (#13644)

Commit
12 days ago
docs: Correct verified inaccuracies in the Turborepo Agent Skill (#13644) ### Description The Agent Skill in `skills/turborepo/` (installed via `npx skills add vercel/turborepo`, recommended by the [AI guide](https://turborepo.dev/docs/guides/ai)) is consumed directly by AI coding agents, so inaccuracies here propagate into real repositories as broken commands and wrong configuration. An audit of the skill against the code produced 26 verified findings; this PR fixes 25 of them. The remaining one (`$TURBO_EXTENDS$` ordering) required no change — the skill text was already correct. **Commands that fail argument parsing:** - `--affected-base=<ref>` / `--affected-head=<ref>` don't exist — `--affected` is a bare boolean (`crates/turborepo-lib/src/cli/args.rs`). Replaced with `TURBO_SCM_BASE` / `TURBO_SCM_HEAD` at all four sites, and documented the real base resolution: `TURBO_SCM_BASE`, then the CI base ref on GitHub Actions (`GITHUB_BASE_REF` for PRs, the push event's previous SHA otherwise), then the literal refs `main`, `master` — the repo's configured default branch is never read. - `npx turbo-ignore --verbose` doesn't exist — replaced with the real option set from `packages/turbo-ignore/src/cli.ts` (`--task`, `--directory`, `--turbo-version`, `--max-buffer`). **Wrong values that break configuration:** - `remoteCache.apiUrl` default corrected to `https://vercel.com/api` (`DEFAULT_API_URL`, `crates/turborepo-config/src/lib.rs`). The client appends `/v8/artifacts/...` directly to `apiUrl`, so copying the previously documented `https://vercel.com` produces requests that miss the API mount. - `cacheDir` default corrected from the pre-2.x `node_modules/.cache/turbo` to `.turbo/cache` (`DEFAULT_CACHE_DIR`). - Removed the fabricated Remix → `REMIX_*` framework-inference row (no `remix` slug exists in `packages/turbo-types/src/json/frameworks.json`) and aligned the whole table with the registry (SvelteKit gains `VITE_*`; Blitz.js, Nitro, and Vue rows added). **Wrong semantics:** - `--ui`: `stream` is the default everywhere; `tui` is opt-in and TTY-gated. Added the third value `stream-with-experimental-timestamps`. - `--env-mode=loose`: makes all env vars available at runtime; the set of vars whose values are hashed stays limited to declared vars. - `--no-cache`: skips cache writes only, reads still hit (previously "skip cache entirely"). - `--graph`: bare flag prints dot to stdout, not "opens in browser"; `.png`/`.jpg`/`.pdf`/`.json` marked deprecated, `.html`/`.dot` added. - Multiple `--filter` flags union rather than intersect — the two "changed apps" examples now use single-expression filters (`--filter={./apps/*}[HEAD^1]`). - Global-hash list: `globalDependencies` renames to `global.inputs` (not `global.env`) under `futureFlags.globalConfiguration`; `bun.lock` added to the lockfile list (binary `bun.lockb` is unsupported). **Missing coverage added:** - The full public `futureFlags` set from `packages/turbo-types/src/types/config-v2.ts` (previously 3 of 12 flags). - `--continue`'s value form (`never` | `dependencies-successful` | `always`, `=` required, bare flag means `always`), `--output-logs=hash-only`, prune's `--production`/`--out-dir`/`--use-gitignore`. - `turbo docs`, `turbo ls`, `turbo query` entries plus one-line mentions of `devtools`/`info`/`bin`/`daemon`/`telemetry`. - A TUI keybind table derived from `crates/turborepo-ui/src/tui/input.rs`. - nub/aube package managers; `experimentalCargoWorkspaces`/`experimentalPythonWorkspaces`; `futureFlags.watchUsingTaskInputs` in the watch reference. **Deprecations marked:** `--parallel`, `--remote-cache-read-only`, and `TURBO_REMOTE_ONLY`, each with its `--cache`/`TURBO_CACHE` replacement, matching the CLI's runtime warnings. Also switched the ESLint guidance from legacy `.eslintrc.js`/ESLint 8 to flat config, matching `examples/basic/packages/eslint-config`. ### Testing Instructions Docs-only change to `skills/turborepo/` — no code paths affected. - `grep -rEn 'affected-base|affected-head' skills/` returns nothing. - Spot-check corrected values against their sources: `DEFAULT_API_URL`/`DEFAULT_CACHE_DIR` in `crates/turborepo-config/src/lib.rs`, the `--continue` clap attributes in `crates/turborepo-lib/src/cli/args.rs`, the framework table against `packages/turbo-types/src/json/frameworks.json`, the `futureFlags` list against `packages/turbo-types/src/types/config-v2.ts`, the keybind table against `crates/turborepo-ui/src/tui/input.rs`. - Commands shown in the skill parse per the CLI: `--continue=dependencies-successful` appears in the long-help snapshot (`turborepo_lib__cli__test__turbo_long_help.snap`), and `turbo prune web --production` is covered by the parse tests (`crates/turborepo-lib/src/cli/test.rs`).
Author
Parents
Loading