Dashboard › cli › Distillation
8f4d259e-0fe5-40be-a6ff-3bef20270021["lore_tm_v1_kv517cachuOfRSIlvT4tltzCiyz6b9LChTB2HlgjApE","lore_tm_v1_4D7ZxnBjl7zG24tJN8Ku8E_HvfVltfg8YShTpMhqS-E"]
Date: Sep 10, 2026
: and must never use a space-separated form.packages/cli/test/script/generate-skill-markdown.test.ts tests for extractCommandPathFromHeading(): headings `sentry issue view <issue-id>`, `sentry project create [<org>/]<name>:<platform>...`, and `sentry auth status` resolve respectively to sentry issue view, sentry project create, and sentry auth status; descriptive heading Create a project returns undefined.listCommand has no __primaryUsage, produces positional [<org>], and includes example # Explicit organization\nsentry agent-conversation list my-org; viewCommand produces positional [<org>/]<conversation-id> and exactly 3 ordered examples: 1. full transcript with auto-detection using conv-123, 2. explicit organization using my-org/conv-123, 3. JSON output using my-org/conv-123 --json. formatCommandExamples() must render these under **Examples:** in a fenced bash block with blank lines between examples.matchExampleToCommand() regression cases: project-create block sentry project create web:javascript api:python-django maps to sentry project create; bare sentry auth and sentry auth --token YOUR_SENTRY_API_TOKEN map to default subcommand sentry auth login; longer path sentry auth login is preferred over shorter prefixes.plugins/sentry-cli/skills/sentry-cli/references/project.md: it must contain heading ### \sentry project create [<org>/]<name>:<platform>...`; omit malformed sentry project create "My New App":; omit space-separated forms sentry project create my-new-app javascript-nextjsandsentry project create my-org/my-new-app javascript-nextjs; and retain sentry project create web:javascript api:python-django worker:nodeplussentry project create my-new-app:javascript-nextjs`.../../apps/cli-docs/src/content/docs/commands/agent-conversation.md, ../../apps/cli-docs/src/content/docs/commands/release.md, and ../../apps/cli-docs/src/content/docs/commands/issue.md: expected rows are | \[<org>]` | Organization slug |, | `<environment>` | Deploy environment (e.g. production) |, and | `<issue...>` | Issue IDs to merge (2 or more required) |; issue docs must not contain | `[<issue...>]``.packages/cli/test/lib/introspect.test.ts tests for getPositionalString(): undefined yields ""; tuple placeholders org and project yield <org> <project>; an optional tuple parameter yields <required> [<optional>]; unnamed tuple parameters yield <arg0> <arg1>; array placeholder command yields <command...>; and an unnamed array yields <args...>.extractPositionals() expectations: a tuple containing { placeholder: "required" } and { placeholder: "optional", optional: true } becomes two entries with empty brief, variadic: false, and respective optional: false/true; an array with { placeholder: "issue", brief: "Issues" } becomes { placeholder: "issue", brief: "Issues", optional: false, variadic: true }.extractFlags() expectations: undefined yields []; boolean flag json with brief Output JSON and default false yields kind: "boolean", optional: true, variadic: false, hidden: false; parsed flag limit with brief Max items, default 25, and optional: false preserves those values with variadic: false and hidden: false; boolean flag verbose with hidden: true remains hidden.buildCommandInfo() expectations: command path sentry thing list, brief List things, full description List all the things., positional <target>, one limit flag, aliases { l: "limit" }, and example sentry thing list myorg are preserved; commands without positional args produce "".__primaryUsage: "<name>:<kind>..." must override the underlying array parser placeholder name:kind, causing buildCommandInfo(cmd, "sentry project create").positional to equal <name>:<kind>....__examples override legacy document examples such as sentry thing list stale-org; descriptions are converted into comment-prefixed examples # Use automatic organization detection\nsentry thing list and # Select an organization explicitly\nsentry thing list my-org.extractRouteGroupCommands() expectations: visible list and view commands become ordered paths sentry thing list and sentry thing view, while hidden secret is omitted; nested route-map entries are skipped so only command entry cmd becomes sentry parent cmd.