@blxzer/cursor-trellis 0.3.0 → 0.3.2

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 (193) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +51 -10
  3. package/README.zh-CN.md +21 -7
  4. package/bin/cstl.js +1 -1
  5. package/bin/smart-search.js +1 -1
  6. package/dist/cli/index.d.ts.map +1 -1
  7. package/dist/cli/index.js +17 -15
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/commands/capability-smoke.js +2 -2
  10. package/dist/commands/capability-smoke.js.map +1 -1
  11. package/dist/commands/channel/agent-loader.d.ts +1 -1
  12. package/dist/commands/channel/agent-loader.js +4 -4
  13. package/dist/commands/channel/agent-loader.js.map +1 -1
  14. package/dist/commands/channel/guard.d.ts +2 -2
  15. package/dist/commands/channel/guard.js +3 -3
  16. package/dist/commands/channel/guard.js.map +1 -1
  17. package/dist/commands/channel/index.js +3 -3
  18. package/dist/commands/channel/index.js.map +1 -1
  19. package/dist/commands/channel/list.d.ts +1 -1
  20. package/dist/commands/channel/list.js +1 -1
  21. package/dist/commands/channel/rm.d.ts +1 -1
  22. package/dist/commands/channel/rm.js +1 -1
  23. package/dist/commands/channel/store/lock.d.ts +1 -1
  24. package/dist/commands/channel/store/lock.js +1 -1
  25. package/dist/commands/channel/store/paths.js +1 -1
  26. package/dist/commands/channel/store/paths.js.map +1 -1
  27. package/dist/commands/init.d.ts.map +1 -1
  28. package/dist/commands/init.js +105 -59
  29. package/dist/commands/init.js.map +1 -1
  30. package/dist/commands/uninstall.d.ts +3 -3
  31. package/dist/commands/uninstall.js +10 -10
  32. package/dist/commands/uninstall.js.map +1 -1
  33. package/dist/commands/update.d.ts +6 -1
  34. package/dist/commands/update.d.ts.map +1 -1
  35. package/dist/commands/update.js +83 -28
  36. package/dist/commands/update.js.map +1 -1
  37. package/dist/commands/workflow.d.ts +4 -4
  38. package/dist/commands/workflow.d.ts.map +1 -1
  39. package/dist/commands/workflow.js +10 -9
  40. package/dist/commands/workflow.js.map +1 -1
  41. package/dist/configurators/index.d.ts.map +1 -1
  42. package/dist/configurators/index.js +1 -1
  43. package/dist/configurators/index.js.map +1 -1
  44. package/dist/configurators/shared.js +6 -6
  45. package/dist/configurators/shared.js.map +1 -1
  46. package/dist/configurators/workflow.d.ts +4 -4
  47. package/dist/configurators/workflow.js +1 -1
  48. package/dist/constants/paths.d.ts +24 -24
  49. package/dist/constants/paths.d.ts.map +1 -1
  50. package/dist/constants/paths.js +16 -16
  51. package/dist/constants/paths.js.map +1 -1
  52. package/dist/migrations/manifests/0.3.1.json +32 -0
  53. package/dist/templates/common/bundled-skills/cstl-cursor2plus-setup/SKILL.md +11 -11
  54. package/dist/templates/common/bundled-skills/cstl-meta/SKILL.md +15 -15
  55. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/add-project-local-conventions.md +12 -12
  56. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-agents.md +2 -2
  57. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-context-loading.md +21 -21
  58. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-hooks.md +9 -9
  59. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-skills-or-commands.md +7 -7
  60. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-spec-structure.md +15 -15
  61. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-task-lifecycle.md +27 -27
  62. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/change-workflow.md +7 -7
  63. package/dist/templates/common/bundled-skills/cstl-meta/references/customize-local/overview.md +11 -11
  64. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/context-injection.md +12 -12
  65. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/generated-files.md +21 -21
  66. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/overview.md +14 -14
  67. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/spec-system.md +12 -12
  68. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/task-system.md +23 -23
  69. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/workflow.md +3 -3
  70. package/dist/templates/common/bundled-skills/cstl-meta/references/local-architecture/workspace-memory.md +16 -16
  71. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/agents.md +2 -2
  72. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/hooks-and-settings.md +6 -6
  73. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/overview.md +5 -5
  74. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/platform-map.md +3 -3
  75. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/skills-and-commands.md +5 -5
  76. package/dist/templates/common/bundled-skills/cstl-skill-creator/SKILL.md +2 -2
  77. package/dist/templates/common/bundled-skills/cstl-skill-creator/references/review-checklist.md +1 -1
  78. package/dist/templates/common/bundled-skills/cstl-spec-bootstrap/SKILL.md +5 -5
  79. package/dist/templates/common/bundled-skills/cstl-spec-bootstrap/references/repository-analysis.md +1 -1
  80. package/dist/templates/common/bundled-skills/cstl-spec-bootstrap/references/spec-task-planning.md +3 -3
  81. package/dist/templates/common/bundled-skills/cstl-spec-bootstrap/references/spec-writing.md +1 -1
  82. package/dist/templates/common/commands/continue.md +6 -6
  83. package/dist/templates/common/commands/finish-work.md +5 -5
  84. package/dist/templates/common/commands/start.md +8 -8
  85. package/dist/templates/common/skills/before-dev.md +4 -4
  86. package/dist/templates/common/skills/brainstorm.md +5 -5
  87. package/dist/templates/common/skills/break-loop.md +3 -3
  88. package/dist/templates/common/skills/check.md +5 -5
  89. package/dist/templates/common/skills/update-spec.md +4 -4
  90. package/dist/templates/cursor/agents/cstl-check.md +6 -6
  91. package/dist/templates/cursor/agents/cstl-implement.md +7 -7
  92. package/dist/templates/cursor/agents/cstl-research.md +9 -9
  93. package/dist/templates/cursor/commands/cursor2plus-setup.md +10 -10
  94. package/dist/templates/cursor/rules/cstl-subagent-dispatch.mdc +2 -2
  95. package/dist/templates/cursor/rules/cstl-triage.mdc +2 -2
  96. package/dist/templates/cursor/rules/retrieval-routing.mdc +4 -4
  97. package/dist/templates/extract.d.ts +1 -1
  98. package/dist/templates/extract.js +1 -1
  99. package/dist/templates/markdown/agents.md +11 -11
  100. package/dist/templates/markdown/prompts/run-semantic-slice-12.md.txt +1 -1
  101. package/dist/templates/markdown/spec/guides/cross-platform-thinking-guide.md.txt +5 -5
  102. package/dist/templates/markdown/spec/guides/cursor-context-injection-guide.md.txt +3 -3
  103. package/dist/templates/markdown/spec/guides/cursor-semantic-compliance.md.txt +1 -1
  104. package/dist/templates/markdown/spec/guides/cursor-subagent-policy.md.txt +11 -11
  105. package/dist/templates/markdown/spec/guides/durable-learning-decision-guide.md.txt +8 -8
  106. package/dist/templates/markdown/spec/guides/execution-strategy.md.txt +3 -3
  107. package/dist/templates/markdown/spec/guides/retrieval-daily-guide.md.txt +10 -10
  108. package/dist/templates/markdown/workspace-index.md +3 -3
  109. package/dist/templates/markdown/worktree.yaml.txt +1 -1
  110. package/dist/templates/shared-hooks/index.d.ts +1 -1
  111. package/dist/templates/shared-hooks/index.js +1 -1
  112. package/dist/templates/shared-hooks/inject-retrieval-plan.py +3 -3
  113. package/dist/templates/shared-hooks/inject-shell-session-context.py +7 -7
  114. package/dist/templates/shared-hooks/inject-subagent-context.py +1 -1
  115. package/dist/templates/shared-hooks/inject-workflow-state.py +11 -11
  116. package/dist/templates/shared-hooks/research-end-retrieval-pack.py +1 -1
  117. package/dist/templates/shared-hooks/session-start.py +13 -13
  118. package/dist/templates/trellis/config.yaml +2 -22
  119. package/dist/templates/trellis/index.d.ts +2 -2
  120. package/dist/templates/trellis/index.js +2 -2
  121. package/dist/templates/trellis/local/README.md +3 -3
  122. package/dist/templates/trellis/local/patch_wpelc8.py +4 -4
  123. package/dist/templates/trellis/scripts/add_session.py +20 -20
  124. package/dist/templates/trellis/scripts/common/active_task.py +2 -2
  125. package/dist/templates/trellis/scripts/common/artifact_search.py +587 -587
  126. package/dist/templates/trellis/scripts/common/codebase_retrieval_router.py +6 -6
  127. package/dist/templates/trellis/scripts/common/config.py +3 -3
  128. package/dist/templates/trellis/scripts/common/developer.py +2 -2
  129. package/dist/templates/trellis/scripts/common/packages_context.py +23 -23
  130. package/dist/templates/trellis/scripts/common/parent_orchestration.py +16 -16
  131. package/dist/templates/trellis/scripts/common/paths.py +107 -107
  132. package/dist/templates/trellis/scripts/common/project_file_stats.py +1 -1
  133. package/dist/templates/trellis/scripts/common/retrieval_agent_instructions.py +1 -1
  134. package/dist/templates/trellis/scripts/common/safe_commit.py +31 -31
  135. package/dist/templates/trellis/scripts/common/session_memory.py +360 -360
  136. package/dist/templates/trellis/scripts/common/smart_search_evidence.py +514 -514
  137. package/dist/templates/trellis/scripts/common/smart_search_resolve.py +1 -1
  138. package/dist/templates/trellis/scripts/common/subagent_dispatch.py +2 -2
  139. package/dist/templates/trellis/scripts/common/task_context.py +1 -1
  140. package/dist/templates/trellis/scripts/common/task_dashboard.py +140 -140
  141. package/dist/templates/trellis/scripts/common/task_gates.py +23 -23
  142. package/dist/templates/trellis/scripts/common/task_store.py +5 -5
  143. package/dist/templates/trellis/scripts/common/task_utils.py +3 -3
  144. package/dist/templates/trellis/scripts/common/tasks.py +1 -1
  145. package/dist/templates/trellis/scripts/common/trellis_config.py +3 -3
  146. package/dist/templates/trellis/scripts/common/workflow_phase.py +1 -1
  147. package/dist/templates/trellis/scripts/cursor_retrieval_probe.py +3 -3
  148. package/dist/templates/trellis/scripts/cursor_retrieval_probe_prompt.md +11 -11
  149. package/dist/templates/trellis/scripts/hooks/linear_sync.py +8 -8
  150. package/dist/templates/trellis/scripts/init_developer.py +2 -2
  151. package/dist/templates/trellis/scripts/retrieval_probe_matrix_template.json +4 -4
  152. package/dist/templates/trellis/scripts/route_codebase_retrieval.py +1 -1
  153. package/dist/templates/trellis/scripts/task.py +918 -918
  154. package/dist/templates/trellis/tasks/templates/release-readiness/implement.md +2 -2
  155. package/dist/templates/trellis/workflow.md +64 -64
  156. package/dist/types/migration.d.ts +1 -1
  157. package/dist/types/migration.d.ts.map +1 -1
  158. package/dist/utils/agents-md.d.ts +37 -0
  159. package/dist/utils/agents-md.d.ts.map +1 -0
  160. package/dist/utils/agents-md.js +82 -0
  161. package/dist/utils/agents-md.js.map +1 -0
  162. package/dist/utils/codebase-retrieval-router.js +5 -5
  163. package/dist/utils/codebase-retrieval-router.js.map +1 -1
  164. package/dist/utils/manifest-prune.d.ts +2 -2
  165. package/dist/utils/manifest-prune.js +4 -4
  166. package/dist/utils/manifest-prune.js.map +1 -1
  167. package/dist/utils/mirror-check.d.ts +3 -1
  168. package/dist/utils/mirror-check.d.ts.map +1 -1
  169. package/dist/utils/mirror-check.js +22 -11
  170. package/dist/utils/mirror-check.js.map +1 -1
  171. package/dist/utils/project-capabilities.js +5 -5
  172. package/dist/utils/project-capabilities.js.map +1 -1
  173. package/dist/utils/retrieval-agent-instructions.js +1 -1
  174. package/dist/utils/retrieval-agent-instructions.js.map +1 -1
  175. package/dist/utils/retrieval-execution-telemetry.js +1 -1
  176. package/dist/utils/retrieval-execution-telemetry.js.map +1 -1
  177. package/dist/utils/template-fetcher.js +1 -1
  178. package/dist/utils/template-fetcher.js.map +1 -1
  179. package/dist/utils/template-hash.d.ts +2 -2
  180. package/dist/utils/template-hash.d.ts.map +1 -1
  181. package/dist/utils/template-hash.js +12 -10
  182. package/dist/utils/template-hash.js.map +1 -1
  183. package/dist/utils/workflow-dir.d.ts +13 -0
  184. package/dist/utils/workflow-dir.d.ts.map +1 -0
  185. package/dist/utils/workflow-dir.js +35 -0
  186. package/dist/utils/workflow-dir.js.map +1 -0
  187. package/dist/utils/workflow-ownership.d.ts +36 -0
  188. package/dist/utils/workflow-ownership.d.ts.map +1 -0
  189. package/dist/utils/workflow-ownership.js +137 -0
  190. package/dist/utils/workflow-ownership.js.map +1 -0
  191. package/dist/utils/workflow-resolver.d.ts +1 -1
  192. package/dist/utils/workflow-resolver.js +1 -1
  193. package/package.json +2 -2
@@ -23,7 +23,7 @@ INJECT_NEEDLE = "});return!UbAQWn||"
23
23
  def _repo_root(start: Path) -> Path:
24
24
  cur = start.resolve()
25
25
  for _ in range(12):
26
- if (cur / ".trellis").is_dir():
26
+ if (cur / ".cstl").is_dir():
27
27
  return cur
28
28
  if cur.parent == cur:
29
29
  break
@@ -94,8 +94,8 @@ def resolve_project_models_path(bundle_dir: Path, config: dict) -> Path | None:
94
94
  p = Path(config["projectModelsJson"].strip()).expanduser()
95
95
  return p if p.is_file() else None
96
96
  return _first_existing(
97
- root / ".trellis" / "local" / "subagent-models.json5",
98
- root / ".trellis" / "local" / "subagent-models.json",
97
+ root / ".cstl" / "local" / "subagent-models.json5",
98
+ root / ".cstl" / "local" / "subagent-models.json",
99
99
  )
100
100
 
101
101
 
@@ -167,7 +167,7 @@ def build_inject_block(model_map: dict[str, str]) -> str:
167
167
  if not model_map:
168
168
  raise SystemExit(
169
169
  "model map empty — use skill cstl-cursor2plus-setup or write "
170
- "~/.ccursor/trellis-task-models.json5 (see .trellis/local/trellis-task-models.json5.example)"
170
+ "~/.ccursor/trellis-task-models.json5 (see .cstl/local/trellis-task-models.json5.example)"
171
171
  )
172
172
  pairs = ",".join(f'"{k}":"{v}"' for k, v in sorted(model_map.items()))
173
173
  return (
@@ -12,11 +12,11 @@ Usage:
12
12
  <session content here>
13
13
  EOF
14
14
 
15
- Branch resolution order:
16
- 1. --branch CLI arg (explicit)
17
- 2. task.json branch field (from selected task)
18
- 3. git branch --show-current (auto-detect)
19
- 4. None (omitted gracefully)
15
+ Branch resolution order:
16
+ 1. --branch CLI arg (explicit)
17
+ 2. task.json branch field (from selected task)
18
+ 3. git branch --show-current (auto-detect)
19
+ 4. None (omitted gracefully)
20
20
  """
21
21
 
22
22
  from __future__ import annotations
@@ -28,12 +28,12 @@ from datetime import datetime
28
28
  from pathlib import Path
29
29
 
30
30
  from common.paths import (
31
- FILE_JOURNAL_PREFIX,
32
- get_repo_root,
33
- get_selected_task,
34
- get_developer,
35
- get_workspace_dir,
36
- )
31
+ FILE_JOURNAL_PREFIX,
32
+ get_repo_root,
33
+ get_selected_task,
34
+ get_developer,
35
+ get_workspace_dir,
36
+ )
37
37
  from common.developer import ensure_developer
38
38
  from common.git import run_git
39
39
  from common.safe_commit import (
@@ -322,11 +322,11 @@ def _auto_commit_workspace(repo_root: Path) -> None:
322
322
  """Stage Trellis-owned workspace + task paths and commit.
323
323
 
324
324
  Path scope is restricted to specific products (journal files, index.md,
325
- selected task dirs, the archive subtree). We never `git add` the whole
326
- `.trellis/` tree, and if `.gitignore` blocks the specific paths we
325
+ selected task dirs, the archive subtree). We never `git add` the whole
326
+ `.cstl/` tree, and if `.gitignore` blocks the specific paths we
327
327
  warn + skip — never retry with ``-f``.
328
328
 
329
- Honors ``session_auto_commit`` in ``.trellis/config.yaml``: when set to
329
+ Honors ``session_auto_commit`` in ``.cstl/config.yaml``: when set to
330
330
  ``false``, this function returns immediately without touching git
331
331
  (journal/index files are still written to disk by the caller).
332
332
  """
@@ -502,10 +502,10 @@ def main() -> int:
502
502
  elif args.stdin:
503
503
  extra_content = sys.stdin.read()
504
504
 
505
- # Load selected task once — shared by package and branch resolution
506
- repo_root = get_repo_root()
507
- selected = get_selected_task(repo_root)
508
- task_data = load_task(repo_root / selected) if selected else None
505
+ # Load selected task once — shared by package and branch resolution
506
+ repo_root = get_repo_root()
507
+ selected = get_selected_task(repo_root)
508
+ task_data = load_task(repo_root / selected) if selected else None
509
509
 
510
510
  package = args.package
511
511
  if package:
@@ -519,8 +519,8 @@ def main() -> int:
519
519
  print(f"Error: unknown package '{package}'. Available: {available}", file=sys.stderr)
520
520
  return 1
521
521
  else:
522
- # Inferred: selected task's task.json.package → default_package → None
523
- task_package = task_data.package if task_data else None
522
+ # Inferred: selected task's task.json.package → default_package → None
523
+ task_package = task_data.package if task_data else None
524
524
  package = resolve_package(task_package, repo_root)
525
525
 
526
526
  # Resolve branch: CLI → task.json → git auto-detect → None
@@ -2,7 +2,7 @@
2
2
  """Session-scoped selected task resolution.
3
3
 
4
4
  The user-facing concept is a live-session "selected task". Trellis stores that
5
- pointer per AI session/window under `.trellis/.runtime/sessions/`; without a
5
+ pointer per AI session/window under `.cstl/.runtime/sessions/`; without a
6
6
  stable session key there is no selected task.
7
7
  """
8
8
 
@@ -19,7 +19,7 @@ from datetime import datetime, timezone
19
19
  from pathlib import Path
20
20
  from typing import Any
21
21
 
22
- DIR_WORKFLOW = ".trellis"
22
+ DIR_WORKFLOW = ".cstl"
23
23
  DIR_TASKS = "tasks"
24
24
  DIR_RUNTIME = ".runtime"
25
25
  DIR_SESSIONS = "sessions"