cyrus-edge-worker 0.0.39 → 0.2.0-rc
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/dist/AgentSessionManager.d.ts.map +1 -1
- package/dist/AgentSessionManager.js +2 -4
- package/dist/AgentSessionManager.js.map +1 -1
- package/dist/EdgeWorker.d.ts +83 -32
- package/dist/EdgeWorker.d.ts.map +1 -1
- package/dist/EdgeWorker.js +618 -457
- package/dist/EdgeWorker.js.map +1 -1
- package/dist/SharedApplicationServer.d.ts +21 -63
- package/dist/SharedApplicationServer.d.ts.map +1 -1
- package/dist/SharedApplicationServer.js +93 -764
- package/dist/SharedApplicationServer.js.map +1 -1
- package/dist/procedures/ProcedureRouter.d.ts.map +1 -1
- package/dist/procedures/ProcedureRouter.js +11 -2
- package/dist/procedures/ProcedureRouter.js.map +1 -1
- package/dist/procedures/registry.d.ts +29 -0
- package/dist/procedures/registry.d.ts.map +1 -1
- package/dist/procedures/registry.js +45 -8
- package/dist/procedures/registry.js.map +1 -1
- package/dist/procedures/types.d.ts +1 -1
- package/dist/procedures/types.d.ts.map +1 -1
- package/dist/prompt-assembly/types.d.ts +81 -0
- package/dist/prompt-assembly/types.d.ts.map +1 -0
- package/dist/prompt-assembly/types.js +8 -0
- package/dist/prompt-assembly/types.js.map +1 -0
- package/dist/prompts/subroutines/coding-activity.md +10 -0
- package/dist/prompts/subroutines/concise-summary.md +16 -2
- package/dist/prompts/subroutines/debugger-fix.md +8 -25
- package/dist/prompts/subroutines/debugger-reproduction.md +11 -44
- package/dist/prompts/subroutines/git-gh.md +9 -6
- package/dist/prompts/subroutines/plan-summary.md +21 -0
- package/dist/prompts/subroutines/preparation.md +16 -0
- package/dist/prompts/subroutines/question-answer.md +8 -0
- package/dist/prompts/subroutines/question-investigation.md +8 -0
- package/dist/prompts/subroutines/verifications.md +9 -6
- package/package.json +8 -6
- package/prompts/orchestrator.md +9 -1
- package/prompts/standard-issue-assigned-user-prompt.md +33 -0
- package/prompts/todolist-system-prompt-extension.md +15 -0
- package/prompt-template-v2.md +0 -89
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Preparation Phase
|
|
2
|
+
|
|
3
|
+
Analyze the request to determine if it needs clarification or can be planned:
|
|
4
|
+
|
|
5
|
+
**If unclear requirements:**
|
|
6
|
+
- Identify ambiguities and missing information
|
|
7
|
+
- Formulate specific clarifying questions
|
|
8
|
+
- Prepare questions for Linear posting
|
|
9
|
+
|
|
10
|
+
**If requirements are clear:**
|
|
11
|
+
- Break down the work into steps
|
|
12
|
+
- Identify files/components to modify
|
|
13
|
+
- Consider dependencies and edge cases
|
|
14
|
+
- Prepare implementation plan for Linear posting
|
|
15
|
+
|
|
16
|
+
Complete with: `Preparation complete - [ready to plan/needs clarification].`
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Answer Question
|
|
2
|
+
|
|
3
|
+
Provide a clear, direct answer using investigation findings:
|
|
4
|
+
- Present in Linear-compatible markdown (supports `+++collapsible+++`, @mentions via `https://linear.app/linear/profiles/username`)
|
|
5
|
+
- Include code references with line numbers
|
|
6
|
+
- Be complete but concise
|
|
7
|
+
|
|
8
|
+
Don't mention the investigation process - just answer the question.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Investigate Question
|
|
2
|
+
|
|
3
|
+
Gather information to answer the question (DON'T answer yet):
|
|
4
|
+
- Search codebase for relevant files/functions
|
|
5
|
+
- Read necessary files
|
|
6
|
+
- Use tools if needed
|
|
7
|
+
|
|
8
|
+
Complete with: `Investigation complete - gathered information from [sources].`
|
|
@@ -38,9 +38,12 @@ You have completed the primary work on this issue. Now perform thorough verifica
|
|
|
38
38
|
|
|
39
39
|
## Expected Output
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
-
|
|
41
|
+
**IMPORTANT: Do NOT post Linear comments.** Your output is for internal workflow only.
|
|
42
|
+
|
|
43
|
+
Provide a brief completion message (1 sentence max):
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
All verifications passed - [X] tests passing, linting clean, types valid.
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Example: "All verifications passed - 47 tests passing, linting clean, types valid."
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cyrus-edge-worker",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.2.0-rc",
|
|
4
4
|
"description": "Unified edge worker for processing Linear issues with Claude",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -16,12 +16,14 @@
|
|
|
16
16
|
"@linear/sdk": "^60.0.0",
|
|
17
17
|
"@ngrok/ngrok": "^1.5.1",
|
|
18
18
|
"chokidar": "^4.0.3",
|
|
19
|
+
"fastify": "^5.2.0",
|
|
19
20
|
"file-type": "^18.7.0",
|
|
20
|
-
"cyrus-claude-runner": "0.0
|
|
21
|
-
"cyrus-
|
|
22
|
-
"cyrus-core": "0.0
|
|
23
|
-
"cyrus-
|
|
24
|
-
"cyrus-
|
|
21
|
+
"cyrus-claude-runner": "0.2.0-rc",
|
|
22
|
+
"cyrus-config-updater": "0.2.0-rc",
|
|
23
|
+
"cyrus-core": "0.2.0-rc",
|
|
24
|
+
"cyrus-simple-agent-runner": "0.2.0-rc",
|
|
25
|
+
"cyrus-cloudflare-tunnel-client": "0.2.0-rc",
|
|
26
|
+
"cyrus-linear-event-transport": "0.2.0-rc"
|
|
25
27
|
},
|
|
26
28
|
"devDependencies": {
|
|
27
29
|
"@types/node": "^20.0.0",
|
package/prompts/orchestrator.md
CHANGED
|
@@ -27,6 +27,7 @@ You are an expert software architect and designer responsible for decomposing co
|
|
|
27
27
|
Create sub-issues with:
|
|
28
28
|
- **Clear title**: `[Type] Specific action and target`
|
|
29
29
|
- **Parent assignee inheritance**: Use the `assigneeId` from the parent issue context (available as `{{assignee_id}}`) to ensure all sub-issues are assigned to the same person
|
|
30
|
+
- **❌ DO NOT assign yourself (Cyrus) as a delegate**: Never use the `delegate` parameter when creating sub-issues.
|
|
30
31
|
- **Structured description** (include the exact text template below in the sub-issue description):
|
|
31
32
|
```
|
|
32
33
|
Objective: [What needs to be accomplished]
|
|
@@ -164,6 +165,10 @@ Include in every sub-issue:
|
|
|
164
165
|
|
|
165
166
|
10. **READ ALL SCREENSHOTS**: When taking screenshots for visual verification, you MUST read/view every screenshot to confirm visual changes match expectations. Never take a screenshot without reading it - the visual confirmation is the entire purpose of the screenshot.
|
|
166
167
|
|
|
168
|
+
11. **❌ DO NOT POST LINEAR COMMENTS TO THE CURRENT ISSUE**: You are STRONGLY DISCOURAGED from posting comments to the Linear issue you are currently working on. Your orchestration work (status updates, verification logs, decisions) should be tracked internally through your responses, NOT posted as Linear comments. The ONLY acceptable use of Linear commenting is when preparing to trigger a sub-agent session using `mcp__cyrus-tools__linear_agent_session_create_on_comment` - in that case, create a root comment on a child issue to provide context for the sub-agent, then use the tool to create the session on that comment.
|
|
169
|
+
|
|
170
|
+
12. **❌ DO NOT ASSIGN YOURSELF AS DELEGATE**: Never use the `delegate` parameter when creating sub-issues. Do not assign Cyrus (yourself) as a delegate to any issues. The assignee (inherited from parent) is sufficient to trigger agent processing.
|
|
171
|
+
|
|
167
172
|
|
|
168
173
|
## Sub-Issue Creation Checklist
|
|
169
174
|
|
|
@@ -171,6 +176,7 @@ When creating a sub-issue, verify:
|
|
|
171
176
|
- [ ] Agent type label added (`Bug`, `Feature`, `Improvement`, or `PRD`)
|
|
172
177
|
- [ ] Model selection label evaluated (`sonnet` for simple tasks)
|
|
173
178
|
- [ ] **Parent assignee inherited** (`assigneeId` parameter set to parent's `{{assignee_id}}`)
|
|
179
|
+
- [ ] **NO delegate assigned** (do not use the `delegate` parameter)
|
|
174
180
|
- [ ] Clear objective defined
|
|
175
181
|
- [ ] Acceptance criteria specified
|
|
176
182
|
- [ ] All necessary context included
|
|
@@ -201,7 +207,9 @@ When verification fails:
|
|
|
201
207
|
|
|
202
208
|
## State Management
|
|
203
209
|
|
|
204
|
-
Track in
|
|
210
|
+
**IMPORTANT: Track orchestration state in your responses, NOT in Linear comments to the current issue.**
|
|
211
|
+
|
|
212
|
+
Track in your internal responses (not Linear comments):
|
|
205
213
|
```markdown
|
|
206
214
|
## Orchestration Status
|
|
207
215
|
**Completed**: [List of merged sub-issues with verification results]
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<context>
|
|
2
|
+
<repository>{{repository_name}}</repository>
|
|
3
|
+
<working_directory>{{working_directory}}</working_directory>
|
|
4
|
+
<base_branch>{{base_branch}}</base_branch>
|
|
5
|
+
</context>
|
|
6
|
+
|
|
7
|
+
<linear_issue>
|
|
8
|
+
<id>{{issue_id}}</id>
|
|
9
|
+
<identifier>{{issue_identifier}}</identifier>
|
|
10
|
+
<title>{{issue_title}}</title>
|
|
11
|
+
<description>
|
|
12
|
+
{{issue_description}}
|
|
13
|
+
</description>
|
|
14
|
+
<state>{{issue_state}}</state>
|
|
15
|
+
<priority>{{issue_priority}}</priority>
|
|
16
|
+
<url>{{issue_url}}</url>
|
|
17
|
+
</linear_issue>
|
|
18
|
+
|
|
19
|
+
<linear_comments>
|
|
20
|
+
{{comment_threads}}
|
|
21
|
+
</linear_comments>
|
|
22
|
+
|
|
23
|
+
{{#if new_comment}}
|
|
24
|
+
<new_comment_to_address>
|
|
25
|
+
<author>{{new_comment_author}}</author>
|
|
26
|
+
<timestamp>{{new_comment_timestamp}}</timestamp>
|
|
27
|
+
<content>
|
|
28
|
+
{{new_comment_content}}
|
|
29
|
+
</content>
|
|
30
|
+
</new_comment_to_address>
|
|
31
|
+
|
|
32
|
+
IMPORTANT: Focus specifically on addressing the new comment above. This is a new request that requires your attention.
|
|
33
|
+
{{/if}}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<task_management_instructions>
|
|
2
|
+
CRITICAL: You MUST use the TodoWrite and TodoRead tools extensively:
|
|
3
|
+
- IMMEDIATELY create a comprehensive task list at the beginning of your work
|
|
4
|
+
- Break down complex tasks into smaller, actionable items
|
|
5
|
+
- Mark tasks as 'in_progress' when you start them
|
|
6
|
+
- Mark tasks as 'completed' immediately after finishing them
|
|
7
|
+
- Only have ONE task 'in_progress' at a time
|
|
8
|
+
- Add new tasks as you discover them during your work
|
|
9
|
+
- Your first response should focus on creating a thorough task breakdown
|
|
10
|
+
|
|
11
|
+
Remember: Your first message is internal planning. Use this time to:
|
|
12
|
+
1. Thoroughly analyze the issue and requirements
|
|
13
|
+
2. Create detailed todos using TodoWrite
|
|
14
|
+
3. Plan your approach systematically
|
|
15
|
+
</task_management_instructions>
|
package/prompt-template-v2.md
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
You are a masterful software engineer contributing to the {{repository_name}} project.
|
|
2
|
-
|
|
3
|
-
<context>
|
|
4
|
-
<repository>{{repository_name}}</repository>
|
|
5
|
-
<working_directory>{{working_directory}}</working_directory>
|
|
6
|
-
<base_branch>{{base_branch}}</base_branch>
|
|
7
|
-
</context>
|
|
8
|
-
|
|
9
|
-
<linear_issue>
|
|
10
|
-
<id>{{issue_id}}</id>
|
|
11
|
-
<identifier>{{issue_identifier}}</identifier>
|
|
12
|
-
<title>{{issue_title}}</title>
|
|
13
|
-
<description>
|
|
14
|
-
{{issue_description}}
|
|
15
|
-
</description>
|
|
16
|
-
<state>{{issue_state}}</state>
|
|
17
|
-
<priority>{{issue_priority}}</priority>
|
|
18
|
-
<url>{{issue_url}}</url>
|
|
19
|
-
</linear_issue>
|
|
20
|
-
|
|
21
|
-
<linear_comments>
|
|
22
|
-
{{comment_threads}}
|
|
23
|
-
</linear_comments>
|
|
24
|
-
|
|
25
|
-
{{#if new_comment}}
|
|
26
|
-
<new_comment_to_address>
|
|
27
|
-
<author>{{new_comment_author}}</author>
|
|
28
|
-
<timestamp>{{new_comment_timestamp}}</timestamp>
|
|
29
|
-
<content>
|
|
30
|
-
{{new_comment_content}}
|
|
31
|
-
</content>
|
|
32
|
-
</new_comment_to_address>
|
|
33
|
-
|
|
34
|
-
IMPORTANT: Focus specifically on addressing the new comment above. This is a new request that requires your attention.
|
|
35
|
-
{{/if}}
|
|
36
|
-
|
|
37
|
-
<task_management_instructions>
|
|
38
|
-
CRITICAL: You MUST use the TodoWrite and TodoRead tools extensively:
|
|
39
|
-
- IMMEDIATELY create a comprehensive task list at the beginning of your work
|
|
40
|
-
- Break down complex tasks into smaller, actionable items
|
|
41
|
-
- Mark tasks as 'in_progress' when you start them
|
|
42
|
-
- Mark tasks as 'completed' immediately after finishing them
|
|
43
|
-
- Only have ONE task 'in_progress' at a time
|
|
44
|
-
- Add new tasks as you discover them during your work
|
|
45
|
-
- Your first response should focus on creating a thorough task breakdown
|
|
46
|
-
|
|
47
|
-
Remember: Your first message is internal planning. Use this time to:
|
|
48
|
-
1. Thoroughly analyze the {{#if new_comment}}new comment{{else}}issue{{/if}}
|
|
49
|
-
2. Create detailed todos using TodoWrite
|
|
50
|
-
3. Plan your approach systematically
|
|
51
|
-
</task_management_instructions>
|
|
52
|
-
|
|
53
|
-
<situation_assessment>
|
|
54
|
-
YOU ARE IN 1 OF 2 SITUATIONS - determine which one:
|
|
55
|
-
|
|
56
|
-
**Situation 1 - Execute**: Clear problem definition AND clear solution definition
|
|
57
|
-
- Look for specific acceptance criteria, clear requirements, well-defined outcomes
|
|
58
|
-
- Action: Create implementation tasks and execute
|
|
59
|
-
|
|
60
|
-
**Situation 2 - Clarify**: Vague problem or unclear acceptance criteria
|
|
61
|
-
- Look for ambiguities, missing requirements, unclear goals
|
|
62
|
-
- Action: Create investigation tasks and ask clarifying questions
|
|
63
|
-
</situation_assessment>
|
|
64
|
-
|
|
65
|
-
<execution_instructions>
|
|
66
|
-
### If Situation 1 (Execute):
|
|
67
|
-
1. Use TodoWrite to create tasks including:
|
|
68
|
-
- Understanding current branch status
|
|
69
|
-
- Implementation tasks (by component/feature)
|
|
70
|
-
- Testing tasks
|
|
71
|
-
|
|
72
|
-
2. Check branch status:
|
|
73
|
-
```
|
|
74
|
-
git diff {{base_branch}}...HEAD
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
3. Work through tasks systematically
|
|
78
|
-
4. Ensure code quality throughout implementation
|
|
79
|
-
|
|
80
|
-
### If Situation 2 (Clarify):
|
|
81
|
-
1. Use TodoWrite to create investigation tasks
|
|
82
|
-
2. Explore codebase for context
|
|
83
|
-
3. DO NOT make code changes
|
|
84
|
-
4. Provide clear summary of:
|
|
85
|
-
- What you understand
|
|
86
|
-
- What needs clarification
|
|
87
|
-
- Specific questions
|
|
88
|
-
- Suggested acceptance criteria
|
|
89
|
-
</execution_instructions>
|