jumbo-cli 2.7.2 → 2.9.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 (60) hide show
  1. package/README.md +1 -0
  2. package/assets/skills/define-jumbo-goals/SKILL.md +2 -0
  3. package/assets/skills/jumbo-add-component/SKILL.md +45 -0
  4. package/assets/skills/jumbo-add-decision/SKILL.md +42 -0
  5. package/assets/skills/jumbo-add-dependency/SKILL.md +41 -0
  6. package/assets/skills/jumbo-add-guideline/SKILL.md +47 -0
  7. package/assets/skills/jumbo-add-invariant/SKILL.md +44 -0
  8. package/assets/skills/jumbo-design-goal/SKILL.md +123 -0
  9. package/dist/application/context/project/init/AgentSelection.d.ts +1 -1
  10. package/dist/application/context/project/init/AgentSelection.d.ts.map +1 -1
  11. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.d.ts.map +1 -1
  12. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js +5 -0
  13. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js.map +1 -1
  14. package/dist/domain/project/CursorRulesContent.d.ts +32 -0
  15. package/dist/domain/project/CursorRulesContent.d.ts.map +1 -0
  16. package/dist/domain/project/CursorRulesContent.js +60 -0
  17. package/dist/domain/project/CursorRulesContent.js.map +1 -0
  18. package/dist/infrastructure/context/project/init/AgentFileProtocol.d.ts.map +1 -1
  19. package/dist/infrastructure/context/project/init/AgentFileProtocol.js +6 -2
  20. package/dist/infrastructure/context/project/init/AgentFileProtocol.js.map +1 -1
  21. package/dist/infrastructure/context/project/init/CodexConfigurer.d.ts +34 -0
  22. package/dist/infrastructure/context/project/init/CodexConfigurer.d.ts.map +1 -0
  23. package/dist/infrastructure/context/project/init/CodexConfigurer.js +43 -0
  24. package/dist/infrastructure/context/project/init/CodexConfigurer.js.map +1 -0
  25. package/dist/infrastructure/context/project/init/CopilotConfigurer.d.ts +14 -4
  26. package/dist/infrastructure/context/project/init/CopilotConfigurer.d.ts.map +1 -1
  27. package/dist/infrastructure/context/project/init/CopilotConfigurer.js +97 -4
  28. package/dist/infrastructure/context/project/init/CopilotConfigurer.js.map +1 -1
  29. package/dist/infrastructure/context/project/init/CursorConfigurer.d.ts +60 -0
  30. package/dist/infrastructure/context/project/init/CursorConfigurer.d.ts.map +1 -0
  31. package/dist/infrastructure/context/project/init/CursorConfigurer.js +236 -0
  32. package/dist/infrastructure/context/project/init/CursorConfigurer.js.map +1 -0
  33. package/dist/infrastructure/context/project/init/VibeConfigurer.d.ts +33 -0
  34. package/dist/infrastructure/context/project/init/VibeConfigurer.d.ts.map +1 -0
  35. package/dist/infrastructure/context/project/init/VibeConfigurer.js +42 -0
  36. package/dist/infrastructure/context/project/init/VibeConfigurer.js.map +1 -0
  37. package/dist/infrastructure/host/HostBuilder.d.ts.map +1 -1
  38. package/dist/infrastructure/host/HostBuilder.js +4 -6
  39. package/dist/infrastructure/host/HostBuilder.js.map +1 -1
  40. package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts +9 -13
  41. package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts.map +1 -1
  42. package/dist/infrastructure/local/LocalDatabaseRebuildService.js +36 -29
  43. package/dist/infrastructure/local/LocalDatabaseRebuildService.js.map +1 -1
  44. package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts +25 -0
  45. package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts.map +1 -0
  46. package/dist/infrastructure/messaging/ProjectionBusFactory.js +242 -0
  47. package/dist/infrastructure/messaging/ProjectionBusFactory.js.map +1 -0
  48. package/package.json +1 -1
  49. package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.d.ts +0 -40
  50. package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.d.ts.map +0 -1
  51. package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.js +0 -135
  52. package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.js.map +0 -1
  53. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts +0 -43
  54. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts.map +0 -1
  55. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js +0 -441
  56. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js.map +0 -1
  57. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts +0 -37
  58. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts.map +0 -1
  59. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.js +0 -64
  60. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.js.map +0 -1
package/README.md CHANGED
@@ -166,6 +166,7 @@ Spread some ❤️ and sponsor the projects or buy them a cup of coffee. I have.
166
166
  | [Session Management](docs/reference/commands/session.md) | Manage pause, resume, and session continuity |
167
167
  | [Advanced Workflows](docs/guides/advanced-workflows.md) | Command chaining and multi-agent collaboration patterns |
168
168
  | [Command Reference](docs/reference/) | Full command documentation |
169
+ | [Shared Memories](https://github.com/jumbocontext/shared-jumbo-memories) | Pluggable invariants, guidelines, and patterns to prime your project |
169
170
 
170
171
 
171
172
  ## FAQs
@@ -82,6 +82,8 @@ A goal is **right-sized** when:
82
82
  - `--prerequisite-goals <ids>`: Hard dependency — goal cannot start until prerequisites are complete.
83
83
  - `--previous-goal <id>` / `--next-goal <id>`: Suggested ordering — chains goals for sequential flow.
84
84
 
85
+ When chaining goals, prefix each goal's title with its position in the chain (e.g., `1/3 Deprecate Architecture entity`, `2/3 Migrate context packets`, `3/3 Remove Architecture entity`). This communicates execution order to users and agents reviewing the backlog.
86
+
85
87
  ### 4. Author Each Goal
86
88
 
87
89
  For each goal, compose the three pillars: **objective**, **criteria**, and **scope**.
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: jumbo-add-component
3
+ description: Use liberally when you create, discover, or modify a software component. Registers the component with Jumbo so future sessions have accurate architectural context.
4
+ ---
5
+
6
+ # Add Component
7
+
8
+ Register a software component with Jumbo when you create one, discover an unregistered one, or significantly change one's responsibility.
9
+
10
+ ## Command Syntax
11
+
12
+ ```bash
13
+ jumbo component add \
14
+ --name "<ComponentName>" \
15
+ --type "<service|db|queue|ui|lib|api|worker|cache|storage>" \
16
+ --description "<What the component does>" \
17
+ --responsibility "<Single responsibility>" \
18
+ --path "<file-path>"
19
+ ```
20
+
21
+ ## Bad Example
22
+
23
+ ```bash
24
+ jumbo component add \
25
+ --name "Utils" \
26
+ --type "lib" \
27
+ --description "Helper functions" \
28
+ --responsibility "Various utilities" \
29
+ --path "src/utils.ts"
30
+ ```
31
+
32
+ Vague name, description, and responsibility. A future agent cannot determine what this component does or whether to use it.
33
+
34
+ ## Good Example
35
+
36
+ ```bash
37
+ jumbo component add \
38
+ --name "EventStreamProjectionBuilder" \
39
+ --type "service" \
40
+ --description "Rebuilds materialized projections from event streams by replaying events through registered projection handlers" \
41
+ --responsibility "Projection rebuilding from event history" \
42
+ --path "src/infrastructure/projections/EventStreamProjectionBuilder.ts"
43
+ ```
44
+
45
+ Name is self-documenting. Description and responsibility tell a future agent exactly what the component does and when to interact with it.
@@ -0,0 +1,42 @@
1
+ ---
2
+ name: jumbo-add-decision
3
+ description: Use liberally when you make an architectural choice, select a technology, or reject an alternative. Records the decision so future sessions understand why the codebase looks the way it does.
4
+ ---
5
+
6
+ # Add Decision
7
+
8
+ Register an architectural decision with Jumbo when you choose one approach over alternatives. Decisions explain **why** the codebase looks the way it does — without them, future agents may reverse your choices or repeat your analysis.
9
+
10
+ ## Command Syntax
11
+
12
+ ```bash
13
+ jumbo decision add \
14
+ --title "<Decision title>" \
15
+ --context "<Problem statement and background>" \
16
+ --rationale "<Why this choice was made>" \
17
+ --alternative "<Rejected option>" \
18
+ --consequences "<Trade-offs accepted>"
19
+ ```
20
+
21
+ ## Bad Example
22
+
23
+ ```bash
24
+ jumbo decision add \
25
+ --title "Use events" \
26
+ --context "Need to track changes"
27
+ ```
28
+
29
+ Title is too vague to be useful. Missing rationale means a future agent has no basis for understanding the choice. Missing alternatives means they cannot evaluate whether the context has changed.
30
+
31
+ ## Good Example
32
+
33
+ ```bash
34
+ jumbo decision add \
35
+ --title "Use event sourcing over state-based persistence for domain aggregates" \
36
+ --context "Domain aggregates need audit history and the ability to rebuild state at any point in time" \
37
+ --rationale "Event sourcing provides a complete audit trail and enables temporal queries without additional infrastructure" \
38
+ --alternative "State-based persistence with a separate audit log table" \
39
+ --consequences "Requires projection rebuilding for read models; increases storage for high-frequency aggregates"
40
+ ```
41
+
42
+ Title names both the chosen and rejected pattern. Context explains the problem. Rationale connects the choice to the problem. Alternatives and consequences give future agents the information they need to judge whether the decision still holds.
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: jumbo-add-dependency
3
+ description: Use liberally when you introduce, discover, or upgrade a third-party package or external service. Registers the dependency so future sessions know what the project relies on.
4
+ ---
5
+
6
+ # Add Dependency
7
+
8
+ Register a third-party dependency with Jumbo when you add a new package, discover an unregistered one, or integrate with an external service.
9
+
10
+ ## Command Syntax
11
+
12
+ ```bash
13
+ jumbo dependency add \
14
+ --name "<Display name>" \
15
+ --ecosystem "<npm|pip|maven|service|...>" \
16
+ --package-name "<package-identifier>" \
17
+ --version-constraint "<semver-range>"
18
+ ```
19
+
20
+ ## Bad Example
21
+
22
+ ```bash
23
+ jumbo dependency add \
24
+ --name "testing lib" \
25
+ --ecosystem npm \
26
+ --package-name jest
27
+ ```
28
+
29
+ Name does not match the package. Missing version constraint means future agents cannot detect version drift or compatibility issues.
30
+
31
+ ## Good Example
32
+
33
+ ```bash
34
+ jumbo dependency add \
35
+ --name "Jest" \
36
+ --ecosystem npm \
37
+ --package-name jest \
38
+ --version-constraint "^29.7.0"
39
+ ```
40
+
41
+ Name matches the package identity. Ecosystem and package name enable automated lookups. Version constraint communicates the compatibility range.
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: jumbo-add-guideline
3
+ description: Use liberally when the user expresses a preference about how work should be done — coding style, process, testing approach, communication style. Captures the guideline so future sessions follow it without being told again.
4
+ ---
5
+
6
+ # Add Guideline
7
+
8
+ Register a guideline with Jumbo when the user states a preference about how work should be done. Guidelines shape agent behavior across all future sessions.
9
+
10
+ **Important:** Guidelines must be **generally applicable** to the project. Do not word them for a specific use case, goal, or task. A guideline that only applies to one situation belongs in a goal's criteria, not in the guideline registry.
11
+
12
+ ## Command Syntax
13
+
14
+ ```bash
15
+ jumbo guideline add \
16
+ --category "<testing|codingStyle|process|communication|documentation|security|performance|other>" \
17
+ --title "<Guideline title>" \
18
+ --description "<What to do and when>" \
19
+ --rationale "<Why this matters>" \
20
+ --enforcement "<How compliance is verified>"
21
+ ```
22
+
23
+ ## Bad Example
24
+
25
+ ```bash
26
+ jumbo guideline add \
27
+ --category codingStyle \
28
+ --title "Use arrow functions in the auth module" \
29
+ --description "All functions in src/auth/ should be arrow functions" \
30
+ --rationale "Consistency in auth code" \
31
+ --enforcement "Code review"
32
+ ```
33
+
34
+ Too narrow — scoped to one module and one task. This is a goal criterion, not a project guideline.
35
+
36
+ ## Good Example
37
+
38
+ ```bash
39
+ jumbo guideline add \
40
+ --category codingStyle \
41
+ --title "Prefer arrow functions for non-method declarations" \
42
+ --description "Use arrow functions for callbacks, inline handlers, and standalone function expressions. Use function declarations for exported named functions and class methods." \
43
+ --rationale "Consistent lexical scoping and concise syntax across the codebase" \
44
+ --enforcement "ESLint prefer-arrow-callback rule"
45
+ ```
46
+
47
+ Applies project-wide. States when to use and when not to use. Rationale explains the benefit. Enforcement is concrete.
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: jumbo-add-invariant
3
+ description: Use liberally when you discover or are told a non-negotiable constraint — something that must always be true regardless of context. Registers the invariant so future sessions never violate it.
4
+ ---
5
+
6
+ # Add Invariant
7
+
8
+ Register an invariant with Jumbo when you discover a non-negotiable constraint — a rule that must hold true across the entire project at all times, regardless of which goal is being implemented.
9
+
10
+ **Important:** Invariants must be **generally applicable** to the project. Do not word them for a specific use case, goal, or task. An invariant that only applies during one piece of work belongs in a goal's criteria, not in the invariant registry. If you find yourself writing "when working on X" or "for the Y feature", it is not an invariant.
11
+
12
+ ## Command Syntax
13
+
14
+ ```bash
15
+ jumbo invariant add \
16
+ --title "<Invariant title>" \
17
+ --description "<What must always be true>" \
18
+ --enforcement "<How compliance is verified>" \
19
+ --rationale "<Why this is non-negotiable>"
20
+ ```
21
+
22
+ ## Bad Example
23
+
24
+ ```bash
25
+ jumbo invariant add \
26
+ --title "Session endpoint must validate tokens" \
27
+ --description "The /api/session endpoint must check JWT expiry" \
28
+ --enforcement "Integration test" \
29
+ --rationale "Security requirement for session management"
30
+ ```
31
+
32
+ Too narrow — applies to one endpoint. This is a requirement for a specific feature, not a project-wide invariant.
33
+
34
+ ## Good Example
35
+
36
+ ```bash
37
+ jumbo invariant add \
38
+ --title "All API endpoints must validate authentication tokens" \
39
+ --description "Every endpoint that accepts authenticated requests must verify token validity, expiry, and scope before processing the request" \
40
+ --enforcement "Middleware applied at router level; integration tests verify 401 for expired/invalid tokens" \
41
+ --rationale "Security compliance requirement — unauthenticated access to protected resources is a critical vulnerability"
42
+ ```
43
+
44
+ Applies to every endpoint, not just one. States the full constraint. Enforcement is structural (middleware) not manual. Rationale explains why violation is unacceptable.
@@ -0,0 +1,123 @@
1
+ ---
2
+ name: jumbo-design-goal
3
+ description: Pre-definition collaborative discovery. Aligns a proposed goal with project audience, pains, and value propositions; surfaces design gaps and open questions before handing off to define-jumbo-goals.
4
+ ---
5
+
6
+ # Design Jumbo Goal
7
+
8
+ **Prompt:** Guide collaborative goal design by aligning a proposed piece of work with the project's audience, audience pains, and value propositions — surfacing design gaps and open questions before handing off to the define-jumbo-goals skill for formal decomposition and registration.
9
+
10
+ ## Why Design Precedes Definition
11
+
12
+ Definition without alignment produces goals that solve the wrong problem or miss the audience's actual pain. The define-jumbo-goals skill assumes the *what* and *why* are already clear — it focuses on decomposition, criteria, and scope. If those inputs are vague or misaligned, every downstream artifact (criteria, relations, implementation) inherits the drift. Design is where alignment happens.
13
+
14
+ ## Protocol
15
+
16
+ ### 1. Load Project Context
17
+
18
+ Before discussing the goal, load the project's north-star context:
19
+
20
+ ```bash
21
+ jumbo architecture view
22
+ ```
23
+
24
+ Also extract the `projectContext` from your session start output. From these two sources, note:
25
+
26
+ - **Audiences** — who the project serves
27
+ - **Audience pains** — what problems those audiences face
28
+ - **Value propositions** — what the project promises to deliver
29
+
30
+ These three lists are the alignment targets for every goal.
31
+
32
+ ### 2. Elicit the Goal Idea
33
+
34
+ Ask the user what they want to achieve and why. Extract the raw intent before shaping it:
35
+
36
+ - "What problem are you trying to solve, or what capability are you trying to add?"
37
+ - "What prompted this — a user complaint, a technical limitation, a new requirement?"
38
+ - "Is there anything you've already decided about how this should work?"
39
+
40
+ Listen for the *what* and the *why*. Do not jump to solution design. The goal at this stage is understanding, not specification.
41
+
42
+ ### 3. Align with Project Context
43
+
44
+ Map the proposed goal against each alignment target:
45
+
46
+ | Alignment Target | Question |
47
+ |------------------|----------|
48
+ | Each **audience** | Does this goal serve this audience? If so, how? |
49
+ | Each **audience pain** | Does this goal address this pain? Directly or indirectly? |
50
+ | Each **value proposition** | Does this goal advance this value proposition? |
51
+
52
+ Document which targets the goal serves. If the goal does not align with any audience pain or value proposition, surface that explicitly:
53
+
54
+ > "This goal doesn't appear to address any of the project's stated audience pains or value propositions. That may be fine — it could be infrastructure, tech debt, or a new direction. But let's confirm that's intentional before proceeding."
55
+
56
+ Misalignment is not a blocker — it is a signal that needs acknowledgment.
57
+
58
+ ### 4. Identify Design Gaps
59
+
60
+ Surface missing information that would prevent clean definition. For each category, ask targeted questions:
61
+
62
+ | Gap Category | What to Surface |
63
+ |--------------|-----------------|
64
+ | **Unclear scope** | What is included? What is explicitly excluded? Where are the boundaries? |
65
+ | **Unstated assumptions** | What is being taken for granted about the current system, user behavior, or environment? |
66
+ | **Unknown constraints** | Are there performance, compatibility, security, or process constraints? |
67
+ | **Missing success criteria** | How will we know this is done? What does "correct" look like? |
68
+ | **Unresolved dependencies** | Does this require other work to be completed first? Does it depend on external systems or teams? |
69
+
70
+ Ask one category at a time. Iterate until each gap is resolved or explicitly deferred. Do not overwhelm the user with all questions at once.
71
+
72
+ ### 5. Confirm Readiness
73
+
74
+ Before handing off, verify the following checklist:
75
+
76
+ - [ ] **Objective is clear** — the *what* and *why* can be stated in one sentence
77
+ - [ ] **Audience alignment is explicit** — at least one audience is identified as the beneficiary
78
+ - [ ] **Pain or value proposition is served** — at least one is addressed, or misalignment is acknowledged
79
+ - [ ] **No open questions remain** — all design gaps are resolved or explicitly deferred with rationale
80
+ - [ ] **User has approved the design** — the user confirms this captures their intent
81
+
82
+ If any item is unresolved, return to the relevant protocol step. Do not proceed with open gaps.
83
+
84
+ ### 6. Hand Off to Definition
85
+
86
+ Once the design is confirmed, invoke the define-jumbo-goals skill:
87
+
88
+ ```
89
+ /define-jumbo-goals
90
+ ```
91
+
92
+ Carry forward the gathered context: the objective, the audience alignment, the resolved design gaps, and any constraints or dependencies discovered. The define-jumbo-goals skill will handle decomposition, criteria authoring, scope definition, and goal registration.
93
+
94
+ If the user prefers to defer definition, output a structured summary they can carry forward:
95
+
96
+ ```
97
+ ## Goal Design Summary
98
+ - **Objective:** [one-sentence what + why]
99
+ - **Audiences served:** [list]
100
+ - **Pains addressed:** [list]
101
+ - **Value propositions advanced:** [list]
102
+ - **Constraints:** [list]
103
+ - **Dependencies:** [list]
104
+ - **Deferred questions:** [list, if any]
105
+ ```
106
+
107
+ ## Rules
108
+
109
+ 1. **Never skip project context loading.** Always load audience, pains, and value propositions before discussing alignment. Design without context is guessing.
110
+ 2. **Never proceed to definition with open design questions.** Every gap must be resolved or explicitly deferred with the user's acknowledgment.
111
+ 3. **Never fabricate alignment.** If the goal does not align with any audience pain or value proposition, say so. Do not force-fit connections that do not exist.
112
+ 4. **Never assume the user's intent.** If the raw idea is ambiguous, ask. Do not infer scope, constraints, or success criteria the user has not stated.
113
+ 5. **Never skip user approval.** The user must confirm the design before handoff. The agent's job is to facilitate, not to decide.
114
+
115
+ ## Anti-Patterns
116
+
117
+ | Anti-Pattern | Problem | Fix |
118
+ |--------------|---------|-----|
119
+ | Skipping straight to definition without design | Goals are defined without alignment, producing work that misses the audience's actual pain | Always run the design protocol first — load context, elicit intent, align, identify gaps |
120
+ | Assuming alignment without checking | The goal feels related to the project but no explicit mapping was done | Walk through each audience, pain, and value proposition explicitly |
121
+ | Asking too many questions at once | The user is overwhelmed and gives shallow answers | Iterate one gap category at a time, confirming resolution before moving on |
122
+ | Force-fitting alignment | The agent claims the goal serves a pain it does not actually address | State misalignment honestly — the user may have context that resolves it, or may accept the gap |
123
+ | Treating design as a gate instead of a collaboration | The agent blocks progress because alignment is imperfect | Misalignment is a signal, not a blocker — surface it, discuss it, let the user decide |
@@ -1,4 +1,4 @@
1
- export type AgentId = "claude" | "gemini" | "copilot" | "github-hooks";
1
+ export type AgentId = "claude" | "gemini" | "copilot" | "vibe" | "codex" | "cursor";
2
2
  export interface AvailableAgent {
3
3
  readonly id: AgentId;
4
4
  readonly name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSelection.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/project/init/AgentSelection.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC;AAEvE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"AgentSelection.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/project/init/AgentSelection.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivateRelationCommandHandler.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBAAa,gCAAgC;IAEzC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,WAAW,EAAE,+BAA+B,EAC5C,WAAW,EAAE,+BAA+B,EAC5C,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,0BAA0B;IAG/C,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAuBjE"}
1
+ {"version":3,"file":"DeactivateRelationCommandHandler.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBAAa,gCAAgC;IAEzC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,WAAW,EAAE,+BAA+B,EAC5C,WAAW,EAAE,+BAA+B,EAC5C,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,0BAA0B;IAG/C,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CA8BjE"}
@@ -25,6 +25,11 @@ class DeactivateRelationCommandHandler {
25
25
  }
26
26
  const history = await this.eventReader.readStream(command.relationId);
27
27
  const relation = Relation_js_1.Relation.rehydrate(command.relationId, history);
28
+ // The projection may be stale during event replay (evolve). The rehydrated
29
+ // aggregate is authoritative — skip if already deactivated or removed.
30
+ if (relation.snapshot.status !== 'active') {
31
+ return;
32
+ }
28
33
  const event = relation.deactivate(command.reason);
29
34
  await this.eventWriter.append(event);
30
35
  await this.eventBus.publish(event);
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivateRelationCommandHandler.js","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":";;;AACA,0EAAoE;AAEpE,4EAAsG;AACtG,uFAAoF;AACpF,8FAA0F;AAM1F,MAAa,gCAAgC;IAC3C,YACmB,WAA4C,EAC5C,WAA4C,EAC5C,QAAmB,EACnB,MAAkC;QAHlC,gBAAW,GAAX,WAAW,CAAiC;QAC5C,gBAAW,GAAX,WAAW,CAAiC;QAC5C,aAAQ,GAAR,QAAQ,CAAW;QACnB,WAAM,GAAN,MAAM,CAA4B;IAClD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;QAEhE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,oCAAqB,CAAC,kBAAkB,EAAE;gBAC3D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,aAAa,IAAI,gBAAgB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,sBAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,OAA0B,CAAC,CAAC;QACpF,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF;AA/BD,4EA+BC"}
1
+ {"version":3,"file":"DeactivateRelationCommandHandler.js","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":";;;AACA,0EAAoE;AAEpE,4EAAsG;AACtG,uFAAoF;AACpF,8FAA0F;AAM1F,MAAa,gCAAgC;IAC3C,YACmB,WAA4C,EAC5C,WAA4C,EAC5C,QAAmB,EACnB,MAAkC;QAHlC,gBAAW,GAAX,WAAW,CAAiC;QAC5C,gBAAW,GAAX,WAAW,CAAiC;QAC5C,aAAQ,GAAR,QAAQ,CAAW;QACnB,WAAM,GAAN,MAAM,CAA4B;IAClD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;QAEhE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,oCAAqB,CAAC,kBAAkB,EAAE;gBAC3D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,aAAa,IAAI,gBAAgB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,sBAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,OAA0B,CAAC,CAAC;QAEpF,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF;AAtCD,4EAsCC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Domain Value Object: Cursor Rules Content
3
+ *
4
+ * Codifies the content for .cursor/rules/jumbo.mdc that directs
5
+ * Cursor agents to read JUMBO.md on startup.
6
+ * Handles content generation with YAML frontmatter (alwaysApply: true)
7
+ * and section replacement for repair operations.
8
+ *
9
+ * Rationale: Codified in domain rather than template file to support
10
+ * npm distribution (no file copying during build).
11
+ */
12
+ export declare class CursorRulesContent {
13
+ private static readonly SECTION_MARKER;
14
+ /**
15
+ * Generate full .cursor/rules/jumbo.mdc content with YAML frontmatter
16
+ * and a reference to JUMBO.md.
17
+ */
18
+ static getFullContent(): string;
19
+ /**
20
+ * Marker used to detect if Jumbo section already exists in the rules file.
21
+ */
22
+ static getSectionMarker(): string;
23
+ /**
24
+ * Replace the Jumbo section in an existing rules file with the current content.
25
+ * Finds the section marker and replaces everything from there to EOF
26
+ * with the current section content.
27
+ *
28
+ * @returns Updated content, or null if marker not found
29
+ */
30
+ static replaceSection(existingContent: string): string | null;
31
+ }
32
+ //# sourceMappingURL=CursorRulesContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CursorRulesContent.d.ts","sourceRoot":"","sources":["../../../src/domain/project/CursorRulesContent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAiC;IAEvE;;;OAGG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM;IAa/B;;OAEG;IACH,MAAM,CAAC,gBAAgB,IAAI,MAAM;IAIjC;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAc9D"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /**
3
+ * Domain Value Object: Cursor Rules Content
4
+ *
5
+ * Codifies the content for .cursor/rules/jumbo.mdc that directs
6
+ * Cursor agents to read JUMBO.md on startup.
7
+ * Handles content generation with YAML frontmatter (alwaysApply: true)
8
+ * and section replacement for repair operations.
9
+ *
10
+ * Rationale: Codified in domain rather than template file to support
11
+ * npm distribution (no file copying during build).
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.CursorRulesContent = void 0;
15
+ class CursorRulesContent {
16
+ /**
17
+ * Generate full .cursor/rules/jumbo.mdc content with YAML frontmatter
18
+ * and a reference to JUMBO.md.
19
+ */
20
+ static getFullContent() {
21
+ return `---
22
+ alwaysApply: true
23
+ ---
24
+
25
+ ${this.SECTION_MARKER}
26
+
27
+ # Jumbo Context Management
28
+
29
+ See JUMBO.md and follow all instructions. If the file does not exist, then ignore this instruction.
30
+ `;
31
+ }
32
+ /**
33
+ * Marker used to detect if Jumbo section already exists in the rules file.
34
+ */
35
+ static getSectionMarker() {
36
+ return this.SECTION_MARKER;
37
+ }
38
+ /**
39
+ * Replace the Jumbo section in an existing rules file with the current content.
40
+ * Finds the section marker and replaces everything from there to EOF
41
+ * with the current section content.
42
+ *
43
+ * @returns Updated content, or null if marker not found
44
+ */
45
+ static replaceSection(existingContent) {
46
+ const markerIndex = existingContent.indexOf(this.SECTION_MARKER);
47
+ if (markerIndex === -1)
48
+ return null;
49
+ const before = existingContent.substring(0, markerIndex);
50
+ return before + `${this.SECTION_MARKER}
51
+
52
+ # Jumbo Context Management
53
+
54
+ See JUMBO.md and follow all instructions. If the file does not exist, then ignore this instruction.
55
+ `;
56
+ }
57
+ }
58
+ exports.CursorRulesContent = CursorRulesContent;
59
+ CursorRulesContent.SECTION_MARKER = "<!-- jumbo:cursor-rules -->";
60
+ //# sourceMappingURL=CursorRulesContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CursorRulesContent.js","sourceRoot":"","sources":["../../../src/domain/project/CursorRulesContent.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEH,MAAa,kBAAkB;IAG7B;;;OAGG;IACH,MAAM,CAAC,cAAc;QACnB,OAAO;;;;EAIT,IAAI,CAAC,cAAc;;;;;CAKpB,CAAC;IACA,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,eAAuB;QAC3C,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEjE,IAAI,WAAW,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAEpC,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAEzD,OAAO,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc;;;;;CAKzC,CAAC;IACA,CAAC;;AA/CH,gDAgDC;AA/CyB,iCAAc,GAAG,6BAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AgentFileProtocol.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/context/project/init/AgentFileProtocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gEAAgE,CAAC;AACzG,OAAO,EAAE,kBAAkB,EAAE,MAAM,oEAAoE,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mEAAmE,CAAC;AAoBtG,qBAAa,iBAAkB,YAAW,kBAAkB;IAQ9C,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAP/C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAK1B;gBAE2B,kBAAkB,GAAE,MAAqC;IAEtF;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD;;OAEG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBxD;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC;IAQhB;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD;;OAEG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBxD;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC;IAYhB,kBAAkB,IAAI,SAAS,cAAc,EAAE;IAI/C;;OAEG;IACG,qBAAqB,CACzB,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YA+BjB,0BAA0B;YAiC1B,yBAAyB;YAkCzB,0BAA0B;YA8B1B,qBAAqB;IAanC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,iBAAiB;CAW1B"}
1
+ {"version":3,"file":"AgentFileProtocol.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/context/project/init/AgentFileProtocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gEAAgE,CAAC;AACzG,OAAO,EAAE,kBAAkB,EAAE,MAAM,oEAAoE,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mEAAmE,CAAC;AAsBtG,qBAAa,iBAAkB,YAAW,kBAAkB;IAU9C,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAT/C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAO1B;gBAE2B,kBAAkB,GAAE,MAAqC;IAEtF;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD;;OAEG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBxD;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC;IAQhB;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD;;OAEG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBxD;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC;IAYhB,kBAAkB,IAAI,SAAS,cAAc,EAAE;IAI/C;;OAEG;IACG,qBAAqB,CACzB,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,SAAS,OAAO,EAAE,GACpC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YA+BjB,0BAA0B;YAiC1B,yBAAyB;YAkCzB,0BAA0B;YA8B1B,qBAAqB;IAanC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,iBAAiB;CAW1B"}
@@ -25,7 +25,9 @@ const AgentsMdContent_js_1 = require("../../../../domain/project/AgentsMdContent
25
25
  const ClaudeConfigurer_js_1 = require("./ClaudeConfigurer.js");
26
26
  const GeminiConfigurer_js_1 = require("./GeminiConfigurer.js");
27
27
  const CopilotConfigurer_js_1 = require("./CopilotConfigurer.js");
28
- const GitHubHooksConfigurer_js_1 = require("./GitHubHooksConfigurer.js");
28
+ const VibeConfigurer_js_1 = require("./VibeConfigurer.js");
29
+ const CodexConfigurer_js_1 = require("./CodexConfigurer.js");
30
+ const CursorConfigurer_js_1 = require("./CursorConfigurer.js");
29
31
  const DEFAULT_TEMPLATE_SKILLS_ROOT = path_1.default.resolve(__dirname, "..", "..", "..", "..", "..", "assets", "skills");
30
32
  class AgentFileProtocol {
31
33
  constructor(templateSkillsRoot = DEFAULT_TEMPLATE_SKILLS_ROOT) {
@@ -34,7 +36,9 @@ class AgentFileProtocol {
34
36
  new ClaudeConfigurer_js_1.ClaudeConfigurer(),
35
37
  new GeminiConfigurer_js_1.GeminiConfigurer(),
36
38
  new CopilotConfigurer_js_1.CopilotConfigurer(),
37
- new GitHubHooksConfigurer_js_1.GitHubHooksConfigurer(),
39
+ new VibeConfigurer_js_1.VibeConfigurer(),
40
+ new CodexConfigurer_js_1.CodexConfigurer(),
41
+ new CursorConfigurer_js_1.CursorConfigurer(),
38
42
  ];
39
43
  }
40
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AgentFileProtocol.js","sourceRoot":"","sources":["../../../../../src/infrastructure/context/project/init/AgentFileProtocol.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;;;;AAEH,gDAAwB;AACxB,wDAA0B;AAI1B,oFAA8E;AAC9E,sFAAgF;AAEhF,+DAAyD;AACzD,+DAAyD;AACzD,iEAA2D;AAC3D,yEAAmE;AAEnE,MAAM,4BAA4B,GAAG,cAAI,CAAC,OAAO,CAC/C,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,CACT,CAAC;AAEF,MAAa,iBAAiB;IAQ5B,YAA6B,qBAA6B,4BAA4B;QAAzD,uBAAkB,GAAlB,kBAAkB,CAAuC;QAPrE,gBAAW,GAAkB;YAC5C,IAAI,sCAAgB,EAAE;YACtB,IAAI,sCAAgB,EAAE;YACtB,IAAI,wCAAiB,EAAE;YACvB,IAAI,gDAAqB,EAAE;SAC5B,CAAC;IAEuF,CAAC;IAE1F;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,WAAmB;QACrC,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEvD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,kCAAc,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,QAAQ,GAAG,kCAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE7D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,kCAAc,CAAC,eAAe,EAAE,CAAC;gBAC3E,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAEjD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,oCAAe,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC5E,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,oCAAe,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE9D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,oCAAe,CAAC,eAAe,EAAE,CAAC;gBAC5E,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,wCAAwC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,WAAmB,EACnB,gBAAqC;QAErC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/D,MAAM,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,WAAmB;QACrC,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEvD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,kCAAc,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,QAAQ,GAAG,kCAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE7D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,kCAAc,CAAC,eAAe,EAAE,CAAC;gBAC3E,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAEjD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,oCAAe,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC5E,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,oCAAe,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE9D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,oCAAe,CAAC,eAAe,EAAE,CAAC;gBAC5E,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,wCAAwC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,WAAmB,EACnB,gBAAqC;QAErC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/D,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,WAAmB,EACnB,gBAAqC;QAErC,MAAM,OAAO,GAAwB,EAAE,CAAC;QAExC,kBAAkB;QAClB,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YAChE,WAAW,EAAE,wBAAwB;SACtC,CAAC,CAAC;QAEH,mBAAmB;QACnB,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YACjE,WAAW,EAAE,wBAAwB;SACtC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/D,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAC9E,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC1F,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAE9B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,WAAmB,EACnB,gBAAqC;QAErC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC9D,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,KAAK,MAAM,0BAA0B,IAAI,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClF,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC;YAC9E,MAAM,kBAAE,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAEvC,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,MAAM,oBAAoB,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;gBAC3E,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;gBAE3E,IAAI,CAAC;oBACH,MAAM,kBAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yBAAyB,EAAE;wBAC7D,SAAS,EAAE,KAAK;wBAChB,YAAY,EAAE,KAAK;qBACpB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CACV,8CAA8C,SAAS,SAAS,0BAA0B,KACxF,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,WAAmB,EACnB,gBAAqC;QAErC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC9D,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,KAAK,MAAM,0BAA0B,IAAI,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClF,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC;YAC9E,MAAM,kBAAE,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAEvC,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,MAAM,oBAAoB,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;gBAC3E,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;gBAE3E,IAAI,CAAC;oBACH,MAAM,kBAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;oBAC3C,MAAM,kBAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yBAAyB,EAAE;wBAC7D,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE,KAAK;qBACpB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CACV,6CAA6C,SAAS,SAAS,0BAA0B,KACvF,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,WAAmB,EACnB,gBAAqC;QAErC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC9D,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAwB,EAAE,CAAC;QACxC,KAAK,MAAM,0BAA0B,IAAI,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClF,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CACzC,WAAW,EACX,0BAA0B,EAC1B,SAAS,CACV,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;gBAC9D,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,cAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;oBAC1E,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;oBACpC,WAAW,EACT,iFAAiF;iBACpF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,qBAAqB;QACjC,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnF,OAAO,OAAO;aACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;aACtC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAEO,cAAc,CAAC,gBAAqC;QAC1D,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEO,iBAAiB,CAAC,gBAAqC;QAC7D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/D,KAAK,MAAM,aAAa,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBACtD,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,CAAC;CACF;AArUD,8CAqUC"}
1
+ {"version":3,"file":"AgentFileProtocol.js","sourceRoot":"","sources":["../../../../../src/infrastructure/context/project/init/AgentFileProtocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Infrastructure: OpenAI Codex Configurer
3
+ *
4
+ * Encapsulates all knowledge about OpenAI Codex configuration:
5
+ * - Skills distributed to .codex/skills
6
+ *
7
+ * Codex reads AGENTS.md natively, so no instruction file is needed.
8
+ * Codex does not support lifecycle hooks, so configuration is
9
+ * limited to skill distribution.
10
+ *
11
+ * Operations are idempotent and gracefully handle errors.
12
+ */
13
+ import { IConfigurer } from "./IConfigurer.js";
14
+ import { PlannedFileChange } from "../../../../application/context/project/init/PlannedFileChange.js";
15
+ export declare class CodexConfigurer implements IConfigurer {
16
+ readonly agent: {
17
+ readonly id: "codex";
18
+ readonly name: "Codex";
19
+ };
20
+ readonly skillPlatforms: readonly [".codex/skills"];
21
+ /**
22
+ * Configure all OpenAI Codex requirements for Jumbo.
23
+ * Codex reads AGENTS.md natively and has no hook system,
24
+ * so no additional configuration files are needed.
25
+ *
26
+ * @param projectRoot Absolute path to project root directory
27
+ */
28
+ configure(_projectRoot: string): Promise<void>;
29
+ /**
30
+ * Return what changes this configurer will make without executing.
31
+ */
32
+ getPlannedFileChanges(_projectRoot: string): Promise<PlannedFileChange[]>;
33
+ }
34
+ //# sourceMappingURL=CodexConfigurer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodexConfigurer.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/context/project/init/CodexConfigurer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mEAAmE,CAAC;AAEtG,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,KAAK;;;MAGH;IAEX,QAAQ,CAAC,cAAc,6BAA8B;IAErD;;;;;;OAMG;IACG,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD;;OAEG;IACG,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAGhF"}