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.
- package/README.md +1 -0
- package/assets/skills/define-jumbo-goals/SKILL.md +2 -0
- package/assets/skills/jumbo-add-component/SKILL.md +45 -0
- package/assets/skills/jumbo-add-decision/SKILL.md +42 -0
- package/assets/skills/jumbo-add-dependency/SKILL.md +41 -0
- package/assets/skills/jumbo-add-guideline/SKILL.md +47 -0
- package/assets/skills/jumbo-add-invariant/SKILL.md +44 -0
- package/assets/skills/jumbo-design-goal/SKILL.md +123 -0
- package/dist/application/context/project/init/AgentSelection.d.ts +1 -1
- package/dist/application/context/project/init/AgentSelection.d.ts.map +1 -1
- package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.d.ts.map +1 -1
- package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js +5 -0
- package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js.map +1 -1
- package/dist/domain/project/CursorRulesContent.d.ts +32 -0
- package/dist/domain/project/CursorRulesContent.d.ts.map +1 -0
- package/dist/domain/project/CursorRulesContent.js +60 -0
- package/dist/domain/project/CursorRulesContent.js.map +1 -0
- package/dist/infrastructure/context/project/init/AgentFileProtocol.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/AgentFileProtocol.js +6 -2
- package/dist/infrastructure/context/project/init/AgentFileProtocol.js.map +1 -1
- package/dist/infrastructure/context/project/init/CodexConfigurer.d.ts +34 -0
- package/dist/infrastructure/context/project/init/CodexConfigurer.d.ts.map +1 -0
- package/dist/infrastructure/context/project/init/CodexConfigurer.js +43 -0
- package/dist/infrastructure/context/project/init/CodexConfigurer.js.map +1 -0
- package/dist/infrastructure/context/project/init/CopilotConfigurer.d.ts +14 -4
- package/dist/infrastructure/context/project/init/CopilotConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/CopilotConfigurer.js +97 -4
- package/dist/infrastructure/context/project/init/CopilotConfigurer.js.map +1 -1
- package/dist/infrastructure/context/project/init/CursorConfigurer.d.ts +60 -0
- package/dist/infrastructure/context/project/init/CursorConfigurer.d.ts.map +1 -0
- package/dist/infrastructure/context/project/init/CursorConfigurer.js +236 -0
- package/dist/infrastructure/context/project/init/CursorConfigurer.js.map +1 -0
- package/dist/infrastructure/context/project/init/VibeConfigurer.d.ts +33 -0
- package/dist/infrastructure/context/project/init/VibeConfigurer.d.ts.map +1 -0
- package/dist/infrastructure/context/project/init/VibeConfigurer.js +42 -0
- package/dist/infrastructure/context/project/init/VibeConfigurer.js.map +1 -0
- package/dist/infrastructure/host/HostBuilder.d.ts.map +1 -1
- package/dist/infrastructure/host/HostBuilder.js +4 -6
- package/dist/infrastructure/host/HostBuilder.js.map +1 -1
- package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts +9 -13
- package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts.map +1 -1
- package/dist/infrastructure/local/LocalDatabaseRebuildService.js +36 -29
- package/dist/infrastructure/local/LocalDatabaseRebuildService.js.map +1 -1
- package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts +25 -0
- package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts.map +1 -0
- package/dist/infrastructure/messaging/ProjectionBusFactory.js +242 -0
- package/dist/infrastructure/messaging/ProjectionBusFactory.js.map +1 -0
- package/package.json +1 -1
- package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.d.ts +0 -40
- package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.d.ts.map +0 -1
- package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.js +0 -135
- package/dist/infrastructure/context/project/init/GitHubHooksConfigurer.js.map +0 -1
- package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts +0 -43
- package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts.map +0 -1
- package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js +0 -441
- package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js.map +0 -1
- package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts +0 -37
- package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts.map +0 -1
- package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.js +0 -64
- 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 +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,
|
|
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"}
|
package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.d.ts.map
CHANGED
|
@@ -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;
|
|
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);
|
package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js.map
CHANGED
|
@@ -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;
|
|
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;
|
|
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
|
|
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
|
|
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,
|
|
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"}
|