cue-ai 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/README.md +757 -110
  2. package/package.json +5 -5
  3. package/profiles/README.md +12 -12
  4. package/profiles/SCHEMA.md +31 -3
  5. package/profiles/_cache/README.md +1 -1
  6. package/profiles/_types.ts +26 -1
  7. package/profiles/backend/profile.yaml +1 -0
  8. package/profiles/career/profile.yaml +13 -0
  9. package/profiles/core/profile.yaml +76 -9
  10. package/profiles/creative-media/README.md +1 -1
  11. package/profiles/cybersecurity/profile.yaml +779 -756
  12. package/profiles/ecc/profile.yaml +39 -0
  13. package/profiles/event-design/profile.yaml +10 -0
  14. package/profiles/fleet-control/README.md +1 -1
  15. package/profiles/frontend/profile.yaml +14 -0
  16. package/profiles/full/README.md +1 -1
  17. package/profiles/go-api/profile.yaml +1 -0
  18. package/profiles/marketing/profile.yaml +12 -1
  19. package/profiles/predict-everything/profile.yaml +9 -0
  20. package/profiles/rust/profile.yaml +22 -3
  21. package/profiles/rust-cli/profile.yaml +14 -0
  22. package/profiles/rust-core/profile.yaml +35 -0
  23. package/profiles/rust-embedded/profile.yaml +11 -0
  24. package/profiles/rust-ffi/profile.yaml +13 -0
  25. package/profiles/rust-game/profile.yaml +11 -0
  26. package/profiles/rust-wasm/profile.yaml +11 -0
  27. package/profiles/rust-web/profile.yaml +17 -0
  28. package/profiles/schema.json +44 -4
  29. package/profiles/trendradar/profile.yaml +11 -0
  30. package/resources/mcps/README.md +39 -164
  31. package/resources/mcps/configs/claude.sanitized.json +55 -0
  32. package/resources/mcps/configs/claude_runtime.sanitized.json +47 -0
  33. package/resources/skills/README.md +70 -113
  34. package/resources/skills/skills/event-design/wedding-invitations/SKILL.md +43 -0
  35. package/resources/skills/skills/meta/acpx/SKILL.md +78 -0
  36. package/resources/skills/skills/meta/cue-usage/SKILL.md +24 -0
  37. package/resources/skills/skills/meta/profile-fit-monitor/SKILL.md +24 -0
  38. package/resources/skills/skills/predict-everything/mirofish/SKILL.md +75 -0
  39. package/resources/skills/skills/research/trendradar/SKILL.md +88 -0
  40. package/resources/skills/skills/rust/async-tokio/SKILL.md +27 -0
  41. package/resources/skills/skills/rust/axum-api/SKILL.md +38 -0
  42. package/resources/skills/skills/rust/bacon-watch/SKILL.md +24 -0
  43. package/resources/skills/skills/rust/bevy/SKILL.md +43 -0
  44. package/resources/skills/skills/rust/bindgen/SKILL.md +39 -0
  45. package/resources/skills/skills/rust/cargo-audit/SKILL.md +26 -0
  46. package/resources/skills/skills/rust/cargo-basics/SKILL.md +28 -0
  47. package/resources/skills/skills/rust/cargo-chef/SKILL.md +43 -0
  48. package/resources/skills/skills/rust/cargo-edit/SKILL.md +26 -0
  49. package/resources/skills/skills/rust/cargo-expand/SKILL.md +24 -0
  50. package/resources/skills/skills/rust/cargo-flamegraph/SKILL.md +26 -0
  51. package/resources/skills/skills/rust/cargo-fuzz/SKILL.md +34 -0
  52. package/resources/skills/skills/rust/cargo-hack/SKILL.md +26 -0
  53. package/resources/skills/skills/rust/cargo-msrv/SKILL.md +30 -0
  54. package/resources/skills/skills/rust/cargo-mutants/SKILL.md +26 -0
  55. package/resources/skills/skills/rust/cargo-nextest/SKILL.md +24 -0
  56. package/resources/skills/skills/rust/cargo-readme/SKILL.md +36 -0
  57. package/resources/skills/skills/rust/cbindgen/SKILL.md +41 -0
  58. package/resources/skills/skills/rust/chisel-tool/SKILL.md +32 -0
  59. package/resources/skills/skills/rust/clap-cli/SKILL.md +44 -0
  60. package/resources/skills/skills/rust/clippy-and-fmt/SKILL.md +25 -0
  61. package/resources/skills/skills/rust/cross-compile/SKILL.md +26 -0
  62. package/resources/skills/skills/rust/embedded/SKILL.md +33 -0
  63. package/resources/skills/skills/rust/error-handling/SKILL.md +32 -0
  64. package/resources/skills/skills/rust/just-runner/SKILL.md +26 -0
  65. package/resources/skills/skills/rust/mdbook/SKILL.md +25 -0
  66. package/resources/skills/skills/rust/napi-rs/SKILL.md +32 -0
  67. package/resources/skills/skills/rust/no-std/SKILL.md +42 -0
  68. package/resources/skills/skills/rust/property-testing/SKILL.md +35 -0
  69. package/resources/skills/skills/rust/pyo3/SKILL.md +40 -0
  70. package/resources/skills/skills/rust/ratatui-tui/SKILL.md +36 -0
  71. package/resources/skills/skills/rust/release-plz/SKILL.md +27 -0
  72. package/resources/skills/skills/rust/reqwest/SKILL.md +37 -0
  73. package/resources/skills/skills/rust/sccache/SKILL.md +28 -0
  74. package/resources/skills/skills/rust/serde/SKILL.md +30 -0
  75. package/resources/skills/skills/rust/snapshot-testing/SKILL.md +30 -0
  76. package/resources/skills/skills/rust/sqlx-cli/SKILL.md +33 -0
  77. package/resources/skills/skills/rust/tracing/SKILL.md +36 -0
  78. package/resources/skills/skills/rust/typos-spellcheck/SKILL.md +31 -0
  79. package/resources/skills/skills/rust/uniffi/SKILL.md +38 -0
  80. package/resources/skills/skills/rust/wasm-rust/SKILL.md +27 -0
  81. package/resources/skills/skills/security/agentshield/SKILL.md +119 -0
  82. package/src/commands/_index.ts +47 -3
  83. package/src/commands/cli.test.ts +192 -0
  84. package/src/commands/cli.ts +303 -0
  85. package/src/commands/current.ts +1 -1
  86. package/src/commands/debug.test.ts +62 -0
  87. package/src/commands/debug.ts +212 -0
  88. package/src/commands/discover.scoring.test.ts +216 -0
  89. package/src/commands/discover.test.ts +145 -0
  90. package/src/commands/discover.ts +2618 -0
  91. package/src/commands/eval-behavior.test.ts +56 -0
  92. package/src/commands/eval-behavior.ts +189 -0
  93. package/src/commands/eval.test.ts +102 -0
  94. package/src/commands/eval.ts +348 -0
  95. package/src/commands/evolve.ts +291 -0
  96. package/src/commands/failures.test.ts +78 -0
  97. package/src/commands/failures.ts +393 -0
  98. package/src/commands/feedback.ts +219 -0
  99. package/src/commands/init.ts +26 -0
  100. package/src/commands/launch.e2e.test.ts +9 -1
  101. package/src/commands/launch.ts +174 -11
  102. package/src/commands/lint-skill.ts +157 -0
  103. package/src/commands/marketplace.ts +763 -2
  104. package/src/commands/new.ts +1 -1
  105. package/src/commands/optimizer.ts +92 -28
  106. package/src/commands/profile-draft-skill.test.ts +96 -0
  107. package/src/commands/profile-draft-skill.ts +287 -0
  108. package/src/commands/profile-evolve.test.ts +126 -0
  109. package/src/commands/profile-evolve.ts +0 -0
  110. package/src/commands/profile-suggest.ts +223 -0
  111. package/src/commands/profile.ts +41 -0
  112. package/src/commands/quick.ts +2 -17
  113. package/src/commands/scan.ts +2 -2
  114. package/src/commands/score.ts +1 -1
  115. package/src/commands/share.ts +1 -1
  116. package/src/commands/sources.ts +2 -2
  117. package/src/commands/submit-profile.ts +262 -0
  118. package/src/commands/upgrade.ts +1 -1
  119. package/src/commands/use.ts +35 -5
  120. package/src/commands/validate.ts +1 -1
  121. package/src/index.ts +66 -0
  122. package/src/lib/analytics.ts +48 -2
  123. package/src/lib/claude-binary.ts +39 -0
  124. package/src/lib/cli-extractor.ts +77 -0
  125. package/src/lib/cluster-skills.test.ts +268 -0
  126. package/src/lib/cluster-skills.ts +290 -0
  127. package/src/lib/credentials-sync.test.ts +208 -0
  128. package/src/lib/credentials-sync.ts +205 -0
  129. package/src/lib/mcp-materializer.test.ts +1 -1
  130. package/src/lib/persona-playbooks.test.ts +111 -0
  131. package/src/lib/pr-poster.test.ts +243 -0
  132. package/src/lib/pr-poster.ts +285 -0
  133. package/src/lib/pr-throttle.test.ts +148 -0
  134. package/src/lib/pr-throttle.ts +209 -0
  135. package/src/lib/profile-generator.test.ts +1 -1
  136. package/src/lib/profile-generator.ts +2 -2
  137. package/src/lib/profile-linter.test.ts +6 -3
  138. package/src/lib/profile-linter.ts +71 -8
  139. package/src/lib/profile-loader.test.ts +1 -1
  140. package/src/lib/profile-loader.ts +16 -0
  141. package/src/lib/resolver-local.test.ts +1 -1
  142. package/src/lib/resolver-npx.test.ts +76 -1
  143. package/src/lib/resolver-npx.ts +35 -3
  144. package/src/lib/resolver-plugins.test.ts +1 -1
  145. package/src/lib/runtime-materializer.test.ts +191 -7
  146. package/src/lib/runtime-materializer.ts +310 -42
  147. package/src/lib/scan-plugins.test.ts +1 -1
  148. package/src/lib/skill-linter.test.ts +174 -0
  149. package/src/lib/skill-linter.ts +507 -0
  150. package/src/lib/skill-subset.test.ts +95 -0
  151. package/src/lib/skill-subset.ts +166 -0
  152. package/src/lib/star-prompt.ts +1 -1
  153. package/src/lib/uvx-installer.test.ts +229 -0
  154. package/src/lib/uvx-installer.ts +278 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cue-ai",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "cue — Agent Profile Manager for Claude Code & Codex. Pick a profile, launch with the right skills, MCPs, and plugins.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -14,7 +14,7 @@
14
14
  "cue": "bun src/index.ts",
15
15
  "test": "bun test",
16
16
  "build": "bun build src/index.ts --no-bundle",
17
- "postinstall": "echo '' && echo ' ✅ cue installed. Run: cue init' && echo ' Docs: https://github.com/recodeee/cue' && echo ''"
17
+ "postinstall": "echo '' && echo ' ✅ cue installed. Run: cue init' && echo ' Docs: https://github.com/opencue/cue' && echo ''"
18
18
  },
19
19
  "keywords": [
20
20
  "claude-code",
@@ -31,11 +31,11 @@
31
31
  "license": "MIT",
32
32
  "repository": {
33
33
  "type": "git",
34
- "url": "https://github.com/recodeee/cue.git"
34
+ "url": "https://github.com/opencue/cue.git"
35
35
  },
36
- "homepage": "https://github.com/recodeee/cue",
36
+ "homepage": "https://github.com/opencue/cue",
37
37
  "bugs": {
38
- "url": "https://github.com/recodeee/cue/issues"
38
+ "url": "https://github.com/opencue/cue/issues"
39
39
  },
40
40
  "files": [
41
41
  "bin/",
@@ -1,6 +1,6 @@
1
1
  # profiles/
2
2
 
3
- Where soul profiles live. Each profile is one directory under `profiles/<name>/`
3
+ Where cue profiles live. Each profile is one directory under `profiles/<name>/`
4
4
  containing a `profile.yaml`. The schema for that file is documented in
5
5
  [`SCHEMA.md`](./SCHEMA.md).
6
6
 
@@ -11,7 +11,7 @@ profiles/
11
11
  ├── SCHEMA.md # field-by-field reference + example
12
12
  ├── schema.json # JSON Schema (draft-07) for tooling
13
13
  ├── _types.ts # TypeScript types consumed by bin/cli/
14
- ├── _cache/ # npx-skill fetch cache, populated by `soul use`; gitignored
14
+ ├── _cache/ # npx-skill fetch cache, populated by `cue use`; gitignored
15
15
  ├── _active/ # symlink to the currently-active global profile; gitignored
16
16
  ├── _examples/ # tiny test-fixture profiles, NOT installed
17
17
  └── <name>/ # one directory per real profile
@@ -24,8 +24,8 @@ profiles/
24
24
  A profile bundles three kinds of capability that a Claude Code or Codex session
25
25
  should see together:
26
26
 
27
- - **skills** — local (from `soul/skills/`), npx-fetched, or plugin-namespaced
28
- - **mcps** — server IDs from `soul/mcps/configs/`, materialized as `.mcp.json`
27
+ - **skills** — local (from `cue/skills/`), npx-fetched, or plugin-namespaced
28
+ - **mcps** — server IDs from `cue/mcps/configs/`, materialized as `.mcp.json`
29
29
  - **env** — optional environment variables the agents need
30
30
 
31
31
  Profiles can `inherits` from one other profile to share a common baseline.
@@ -35,25 +35,25 @@ Inheritance depth is capped at 3; cycles are an error.
35
35
 
36
36
  | Path | Owner | Notes |
37
37
  |--------------------------|-------------|--------------------------------------------------|
38
- | `profiles/<name>/profile.yaml` | profile author | Hand-written or generated by `soul new` |
39
- | `profiles/_cache/*` | `soul use` | Auto-populated; never edit by hand |
40
- | `profiles/_active/current` | `soul use --global` | Symlink to active profile; gitignored |
38
+ | `profiles/<name>/profile.yaml` | profile author | Hand-written or generated by `cue new` |
39
+ | `profiles/_cache/*` | `cue use` | Auto-populated; never edit by hand |
40
+ | `profiles/_active/current` | `cue use --global` | Symlink to active profile; gitignored |
41
41
  | `profiles/_examples/*` | repo | Fixtures used by tests; safe to extend |
42
42
 
43
43
  ## Reading further
44
44
 
45
45
  - [`SCHEMA.md`](./SCHEMA.md) — full field reference
46
46
  - [`../docs/profiles/quickstart.md`](../docs/profiles/quickstart.md) — 3-command happy path
47
- - [`../docs/profiles/auto-generation.md`](../docs/profiles/auto-generation.md) — `soul scan` and `soul new`
47
+ - [`../docs/profiles/auto-generation.md`](../docs/profiles/auto-generation.md) — `cue scan` and `cue new`
48
48
  - [`../docs/profiles/anatomy.md`](../docs/profiles/anatomy.md) — deep dive on a real profile
49
- - [`../docs/profiles/troubleshooting.md`](../docs/profiles/troubleshooting.md) — `soul doctor` and common errors
49
+ - [`../docs/profiles/troubleshooting.md`](../docs/profiles/troubleshooting.md) — `cue doctor` and common errors
50
50
 
51
51
  ## Adding a profile
52
52
 
53
53
  See [`../CONTRIBUTING.md`](../CONTRIBUTING.md) § "Adding a profile". The short version:
54
54
 
55
55
  ```bash
56
- soul new my-profile --from-scan --auto # bucket discovered skills automatically
57
- soul validate my-profile # check
58
- soul use my-profile --here # activate in CWD
56
+ cue new my-profile --from-scan --auto # bucket discovered skills automatically
57
+ cue validate my-profile # check
58
+ cue use my-profile --here # activate in CWD
59
59
  ```
@@ -30,15 +30,43 @@ env:
30
30
  | Field | Type | Required | Default | Notes |
31
31
  |---------------|---------------------------------------------------------------|----------|---------|----------------------------------------------------------------------------------------------------|
32
32
  | `name` | string (kebab-case, `[a-z][a-z0-9-]{1,63}`) | yes | — | Must equal the dirname `profiles/<name>/`. |
33
- | `description` | string (one-line, < 200 chars) | yes | — | Shown by `soul list` and embedded in the materialized `CLAUDE.md` stamp. |
33
+ | `description` | string (one-line, < 200 chars) | yes | — | Shown by `cue list` and embedded in the materialized `CLAUDE.md` stamp. |
34
34
  | `agents` | array of `"claude-code" \| "codex"` | no | `[claude-code, codex]` | Restricts which agent runtimes this profile materializes for. |
35
35
  | `inherits` | string (name of another profile) | no | — | Single parent. Depth ≤ 3. Cycles are an error. |
36
36
  | `skills` | object (see below) | no | `{}` | At least one of `local`, `npx`, `plugins` should appear in a useful profile. |
37
- | `skills.local`| array of strings (paths relative to `soul/skills/`) | no | `[]` | E.g. `medusa/building-with-medusa` → resolves to `soul/skills/skills/medusa/building-with-medusa/`. |
37
+ | `skills.local`| array of strings (paths relative to `cue/skills/`) | no | `[]` | E.g. `medusa/building-with-medusa` → resolves to `cue/skills/skills/medusa/building-with-medusa/`. |
38
38
  | `skills.npx` | array of `NpxSkillRef` | no | `[]` | See "NpxSkillRef" below. |
39
39
  | `skills.plugins` | array of strings (Claude Code plugin names) | no | `[]` | Resolved from `~/.claude/plugins/<name>/skills/`. Targets are namespaced as `<plugin>:<skill>`. |
40
- | `mcps` | array of strings (MCP server IDs) | no | `[]` | Must match a key in `soul/mcps/configs/claude.sanitized.json` (or the codex counterpart). |
40
+ | `mcps` | array of strings (MCP server IDs) | no | `[]` | Must match a key in `cue/mcps/configs/claude.sanitized.json` (or the codex counterpart). |
41
41
  | `env` | map<string, string> | no | `{}` | Plain string values. Placeholders like `"${HOSTINGER_API_TOKEN}"` are substituted at materialize-time. |
42
+ | `rules` | array of strings | no | `[]` | Markdown rule files under `resources/rules/` (or absolute paths). Symlinked into `<runtime>/rules/` and indexed in CLAUDE.md — Claude reads on demand, no full-body inline. |
43
+ | `commands` | array of strings | no | `[]` | Slash-command markdown files under `resources/commands/`. Symlinked into `<runtime>/commands/` so the user can invoke `/<name>`. Listed in CLAUDE.md's "Available Commands" section. |
44
+ | `hooks` | array of strings | no | `[]` | Hook bundle JSON files under `resources/hooks/`. Each declares `{ "hooks": { "PreToolUse": [...], "Stop": [...], ... } }` — merged into `settings.json` so hooks run per Claude Code's lifecycle. Sibling `.sh`/`.py` scripts are symlinked into `<runtime>/hooks/` and invoked via `${CLAUDE_CONFIG_DIR}/hooks/...`. |
45
+
46
+ ### rules / commands / hooks example
47
+
48
+ ```yaml
49
+ # profiles/my-backend/profile.yaml
50
+ name: my-backend
51
+ inherits: core
52
+ rules:
53
+ - common/security # → resources/rules/common/security.md
54
+ - typescript/patterns # → resources/rules/typescript/patterns.md
55
+ commands:
56
+ - code-review # → resources/commands/code-review.md, invoked as /code-review
57
+ - checkpoint
58
+ hooks:
59
+ - secrets-guard.json # → resources/hooks/secrets-guard.json (+ secrets-guard.sh)
60
+ ```
61
+
62
+ Path resolution: refs starting with `/` are taken as absolute; otherwise resolved
63
+ relative to `resources/{rules,commands,hooks}/`. `.md` is auto-appended for
64
+ rules/commands if the ref doesn't already end in `.md`. Hooks are taken
65
+ verbatim (need the explicit `.json`). Missing refs are skipped at materialize
66
+ time and reported as `E3` by `cue validate`.
67
+
68
+ Inheritance merges all three with `concat + dedupe`; a child can't remove a
69
+ parent's entry — fork the parent if you need a smaller set.
42
70
 
43
71
  ## NpxSkillRef
44
72
 
@@ -1,6 +1,6 @@
1
1
  # profiles/_cache/
2
2
 
3
- Canonical cache for `npx skills add …` fetches. Populated by `soul use` when a
3
+ Canonical cache for `npx skills add …` fetches. Populated by `cue use` when a
4
4
  profile lists `skills.npx` entries.
5
5
 
6
6
  **Never edit by hand.** Layout:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Types for the soul profile system. Mirror of profiles/schema.json.
2
+ * Types for the cue profile system. Mirror of profiles/schema.json.
3
3
  *
4
4
  * Consumed by bin/cli/* via:
5
5
  * import type { Profile, NpxSkillRef, MCPRef, SkillRef } from "../../profiles/_types";
@@ -43,6 +43,24 @@ export interface Profile {
43
43
  mcps?: MCPRef[];
44
44
  plugins?: PluginRef[];
45
45
  env?: Record<string, string>;
46
+ rules?: string[];
47
+ commands?: string[];
48
+ hooks?: string[];
49
+ // Phase 1: Persona — multi-line role-priming text injected at the top of
50
+ // CLAUDE.md. Defines who the agent IS, not just what tools it has.
51
+ persona?: string;
52
+ // Phase 2: Playbooks — markdown files under resources/playbooks/ with
53
+ // proven step-by-step protocols for common tasks ("ship-feature",
54
+ // "triage-bug"). Symlinked into runtime, indexed in CLAUDE.md.
55
+ playbooks?: string[];
56
+ // Phase 3: Quality gates — script refs under resources/quality-gates/
57
+ // that run as Stop hooks. Veto "done" claims if the work doesn't meet
58
+ // the profile's bar (tests pass, lint clean, etc.).
59
+ qualityGates?: string[];
60
+ // Phase 4: Evals — scenario refs under resources/evals/ that declare
61
+ // "for task X this profile should be able to handle it". `cue eval-behavior`
62
+ // checks structural fit.
63
+ evals?: string[];
46
64
  }
47
65
 
48
66
  // In the resolved (post-inherit) form every ref is normalized to its object shape.
@@ -59,6 +77,13 @@ export interface ResolvedProfile extends Omit<Profile, "skills" | "mcps" | "plug
59
77
  mcps: ResolvedMCP[];
60
78
  plugins: ResolvedPlugin[];
61
79
  env: Record<string, string>;
80
+ rules: string[];
81
+ commands: string[];
82
+ hooks: string[];
83
+ persona: string; // empty string when not declared
84
+ playbooks: string[];
85
+ qualityGates: string[];
86
+ evals: string[];
62
87
  inheritanceChain: string[];
63
88
  }
64
89
 
@@ -8,6 +8,7 @@ skills:
8
8
  - review/code-review
9
9
  - review/security-best-practices
10
10
  - review/security-review
11
+ - security/agentshield
11
12
  - stripe/stripe-best-practices
12
13
  - stripe/stripe-webhooks
13
14
  - deployment/supabase
@@ -0,0 +1,13 @@
1
+ name: career
2
+ icon: "💼"
3
+ description: Job hunting, resume optimization, interview prep, salary negotiation, and career development
4
+ inherits: core
5
+ skills:
6
+ local:
7
+ - career/jdfit
8
+ - career/resume-tailor
9
+ - career/tech-resume-optimizer
10
+ - career/resume-section-builder
11
+ - career/resume-version-manager
12
+ - career/salary-negotiation-prep
13
+ mcps: []
@@ -1,18 +1,85 @@
1
1
  name: core
2
2
  icon: "🐢"
3
3
  description: Baseline shared by every cue profile — essentials only
4
+ persona: |
5
+ You're a careful, experienced collaborator. You operate by these defaults
6
+ every time, regardless of which specialized profile inherits from you:
7
+
8
+ - **State assumptions before acting.** If a request is ambiguous, name the
9
+ ambiguity and pick the reasonable interpretation rather than guessing
10
+ silently.
11
+ - **Minimum-viable change.** Touch only what the task requires. Don't refactor
12
+ adjacent code, don't add features that weren't asked for, don't introduce
13
+ abstractions for hypothetical futures.
14
+ - **Verify before claiming done.** Run the tests / lint / build / actual
15
+ behavior check that proves the change works. "Compiles" ≠ "done."
16
+ - **Tight loops over big patches.** Make a small change → verify → commit
17
+ incrementally. Don't accumulate a 400-line patch you can't bisect.
18
+ - **Voice: terse and specific.** Drop filler. Lead sentences with the verb
19
+ or the answer. Don't summarize what's visible in the diff.
4
20
  skills:
5
21
  local:
6
- - nvidia/aiq-research
7
- # ── Built-in (shared across ALL profiles) ──
8
- - nvidia/skill-evolution
9
- - meta/analyze
10
- - meta/cue-usage
11
- - meta/builtin-manager
12
- - meta/kiro-powers
13
- - caveman/caveman
14
- - caveman/caveman-commit
22
+ # ── Built-in: shared by every cue profile via inheritance ──
23
+ # Universal, triggered by common words or explicit slash commands.
24
+ # Anything special-purpose belongs in a domain profile, not here.
25
+ - meta/analyze # investigation: "analyze", "why does", "what's causing"
26
+ - meta/cue-usage # cue CLI guidance
27
+ - meta/builtin-manager # manage built-in promotion
28
+ - meta/profile-fit-monitor # notice profile mismatch + suggest switch
29
+ - nvidia/skill-evolution # propose skill updates after solving problems
30
+ - caveman/caveman # /caveman — terse output mode
31
+ - caveman/caveman-commit # /commit — Conventional Commits writer
32
+ - meta/acpx # delegate to other coding agents over ACP (codex, claude, pi, ...)
33
+ - tools/ctx-upgrade # context-mode: context window optimization for AI agents
34
+ - tools/context-mode-ops # context-mode: sandbox tool output, 98% reduction
35
+ - tools/fallow # codebase intelligence: unused code, duplication, complexity, cleanup
36
+ # Removed (followup #22 audit, 2026-05-24): nvidia/aiq-research (needs
37
+ # NVIDIA AI-Q server infra), meta/kiro-powers (niche Kiro Powers interop).
38
+ # Add back to a dedicated profile if needed — they don't belong in baseline.
39
+ #
40
+ # Also removed 2026-05-24: Deliberation-Loop (no SKILL.md anywhere),
41
+ # the-council (exists in ~/.claude/skills/ but cue's local resolver only
42
+ # reads from resources/skills/skills/ — wire via skills.npx or symlink
43
+ # into resources/skills/skills/<category>/ to re-enable), and a stray
44
+ # `wedding-invitation-skill` token left inside a comment.
15
45
  mcps:
16
46
  - cue-tty-watch # Claude's eyes inside X displays / tmux panes (screenshot, capture-pane, send-keys)
17
47
  plugins:
18
48
  - claude-mem@thedotmack
49
+ # Universal commands: useful in every profile, not domain-specific.
50
+ # Bodies are lazy-loaded (only when the user types /name), so per-message cost
51
+ # is just the entry in CLAUDE.md's "Available Commands" list (~25 tokens).
52
+ commands:
53
+ - code-review
54
+ - checkpoint
55
+ - cost-report
56
+ - cue
57
+ playbooks:
58
+ # Phase 2: proven step-by-step protocols. Read on demand when the user's
59
+ # request matches. Profiles that inherit core get these for free.
60
+ - ship-feature
61
+ - triage-bug
62
+ evals:
63
+ # Phase 4: structural eval scenarios. `cue eval-behavior core` checks
64
+ # whether core has the skills/commands/playbooks needed to handle these.
65
+ - feature-shipping
66
+ - bug-triage
67
+ hooks:
68
+ # Universal safety: block obviously destructive shell commands (rm -rf /, fork bombs, dd to /dev/sd*, etc.).
69
+ # Every profile inherits core, so every cue user gets this for free.
70
+ - bash-quality-preflight.json
71
+ # Universal analytics: append one line per session-end to ~/.config/cue/session-log.jsonl
72
+ # so `cue eval` sees real usage data for every profile, not just ecc.
73
+ - session-summary.json
74
+ # Refuse writes to .env, id_rsa, credentials.json, .pem/.key, ~/.ssh, ~/.aws, etc.
75
+ - secrets-guard.json
76
+ # Reject low-effort `git commit -m "wip"` / "fix" / "update" messages.
77
+ - commit-message-guard.json
78
+ # Stop hook: scan the full transcript and emit one skill_hit event per
79
+ # unique skill referenced. Replaces the 50KB regex scrape with a full scan.
80
+ # Feeds `cue profile evolve` with accurate per-skill firing data.
81
+ - skill-fire-tracker.json
82
+ # UserPromptSubmit hook: on the FIRST prompt of a session, save it to
83
+ # ~/.config/cue/first-prompts/<cwd-hash>.json so the next `cue launch`
84
+ # in the same cwd with CUE_SMART_SUBSET=1 can auto-trigger smart-subset.
85
+ - first-prompt-capture.json
@@ -12,7 +12,7 @@ Creative Media covers generated images, Higgsfield product shots, marketplace ca
12
12
  - `higgsfield/higgsfield-generate`
13
13
  - `higgsfield/higgsfield-product-photoshoot`
14
14
  - `higgsfield/higgsfield-marketplace-cards`
15
- - `higgsfield/higgsfield-soul-id`
15
+ - `higgsfield/higgsfield-cue-id`
16
16
  - `design/brandkit`
17
17
  - `design/kitty-visualize`
18
18
  - `design/remotion-best-practices`