@nebulit/embuilder 0.1.42 → 0.1.44
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/cli.js +2 -3
- package/package.json +1 -1
- package/templates/backend/prompt.md +6 -6
- package/templates/frontend/prompt.md +24 -0
- package/templates/prompt.md +7 -6
package/dist/cli.js
CHANGED
|
@@ -14,7 +14,6 @@ program
|
|
|
14
14
|
program
|
|
15
15
|
.command('install')
|
|
16
16
|
.description('Install event-model skills into Claude Code')
|
|
17
|
-
.option('--with-templates', 'Also copy template files (ralph.sh, AGENTS.md, Claude.md, prompt.md, README.md) and generators to current directory')
|
|
18
17
|
.action((options) => {
|
|
19
18
|
console.log('📦 Installing EMBuilder...\n');
|
|
20
19
|
try {
|
|
@@ -28,8 +27,8 @@ program
|
|
|
28
27
|
console.error(` Package location: ${__dirname}`);
|
|
29
28
|
console.error('');
|
|
30
29
|
console.error('This might be caused by:');
|
|
31
|
-
console.error(' 1. Old cached version - try: npx --yes
|
|
32
|
-
console.error(' 2. Package not published correctly - reinstall with: npm install -g @
|
|
30
|
+
console.error(' 1. Old cached version - try: npx --yes @@nebulit/embuilder@latest install');
|
|
31
|
+
console.error(' 2. Package not published correctly - reinstall with: npm install -g @nebulit/embuilder@latest');
|
|
33
32
|
console.error('');
|
|
34
33
|
console.error('If the problem persists, please report at:');
|
|
35
34
|
console.error(' https://github.com/dilgerma/embuilder/issues');
|
package/package.json
CHANGED
|
@@ -7,10 +7,10 @@ The structure defined in the Project-Skills is relevant.
|
|
|
7
7
|
## Your Task
|
|
8
8
|
|
|
9
9
|
0. Do not read the entire code base. Focus on the tasks in this description.
|
|
10
|
-
1. Read the description at `.slices/index.json` (in the same directory as this file). Every item in status "planned" is a task.
|
|
10
|
+
1. Read the description at `.slices/index.json` (in the same directory as this file). Every item in status "planned" and assigned to "backend_worker" is a task.
|
|
11
11
|
2. Read the progress log at `progress.txt` (check Codebase Patterns section first)
|
|
12
12
|
3. Make sure you are on the right branch "feature/<slicename>", if unsure, start from main.
|
|
13
|
-
5. Pick the **highest priority**
|
|
13
|
+
5. Pick the **highest priority** task assigned to backend_worker. This becomes your PRD. Set the status "InProgress", add a started_date ( including date and time ) in the index.json. If no slice has status planned, reply with:
|
|
14
14
|
<promise>NO_TASKS</promise> and stop. Do not work on other slices.
|
|
15
15
|
6. Pick the slice definition from the project root /.slices in <folder> defined in the prd. Never work on more than one slice per iteration.
|
|
16
16
|
7. A slice can define additional prompts as codegen/backendPrompt. any additional prompts defined in backend are hints for the implementation of the slice and have to be taken into account. If you use the additional prompt, add a line in progress.txt
|
|
@@ -21,12 +21,12 @@ The structure defined in the Project-Skills is relevant.
|
|
|
21
21
|
10. The slice in the json is always true, the code follows what is defined in the json
|
|
22
22
|
11. the backend of a slice is only 'Done' if business logic is implemented as defined in the JSON, APIs are implemented, all scenarios in JSON are implemented in code and it
|
|
23
23
|
fulfills the slice.json. There must be no specification in json, that has no equivalent in code.
|
|
24
|
-
12. make sure to write the ui-prompt.md as defined if defined in the skill
|
|
24
|
+
12. make sure to write the ui-prompt.md for the ui_worker as defined if defined in the skill
|
|
25
25
|
13. Run quality checks ( npm run build, npm run test ) - Attention - it´s enough to run the tests for the slice. Do not run all tests.
|
|
26
26
|
14. even if the slice is fully implemented, run your test-analyzer skill and provide the code-slice.json file as defined in the skill
|
|
27
|
-
15. Update the Slice in the index.json back to status 'Planned' and assign the 'ui-worker'
|
|
28
|
-
16. If checks pass, commit ALL changes with message: `feat: [Slice Name]
|
|
29
|
-
|
|
27
|
+
15. if the slice is an automation slice, set status to 'Done'. Otherwise - Update the Slice in the index.json back to status 'Planned' and assign the 'ui-worker'
|
|
28
|
+
16. If checks pass, commit ALL changes with message: `feat: [Slice Name]`.
|
|
29
|
+
17. if the slice stauts is 'Done', merge back.
|
|
30
30
|
17. Append your progress to `progress.txt` after each step in the iteration.
|
|
31
31
|
18. append your new learnings to AGENTS.md in a compressed form, reusable for future iterations. Only add learnings if they are not already there.
|
|
32
32
|
19. change the assignee to ui_worker and set it back to planned.
|
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
Build React + TypeScript UI components from slice JSON definitions using established patterns.
|
|
4
4
|
|
|
5
|
+
## Your Task
|
|
6
|
+
|
|
7
|
+
0. Do not read the entire code base. read /frontend/AGENTS.md. Focus on the tasks in this description.
|
|
8
|
+
1. Read the description at `.slices/index.json` (in the same directory as this file). Every item in status "planned" and assigned to "ui_worker" is a task.
|
|
9
|
+
2. Read the progress log at `progress.txt` (check Codebase Patterns section first)
|
|
10
|
+
3. Make sure you are on the right branch "feature/<slicename>", the branch should exist.
|
|
11
|
+
5. Pick the **highest priority** task assigned to ui_worker. This becomes your PRD. Set the status "InProgress", add a started_date ( including date and time ) in the index.json. If no slice has status planned, reply with:
|
|
12
|
+
<promise>NO_TASKS</promise> and stop. Do not work on other slices.
|
|
13
|
+
6. Pick the slice definition from the project root /.slices in <folder> defined in the prd. Never work on more than one slice per iteration.
|
|
14
|
+
7. A slice can define additional prompts as codegen/uiPrompt. any additional prompts defined in backend are hints for the implementation of the slice and have to be taken into account. If you use the additional prompt, add a line in progress.txt
|
|
15
|
+
8. Write a short progress one liner after each step to progress.txt
|
|
16
|
+
9. Analyze and Implement according to the Rest of the instructions in this file, make use of the skills in the skills directory, but also your previsously collected
|
|
17
|
+
knowledge. Make a list TODO list for what needs to be done. Also make sure to adjust the implementation according to the json definition.
|
|
18
|
+
10. The slice in the json is always true, the code follows what is defined in the json
|
|
19
|
+
11. the slice is only 'Done' if APIs are implemented.
|
|
20
|
+
12. make sure to read the ui-prompt.md in /backend/src/slices/<slice>
|
|
21
|
+
13. Run quality checks ( npm run build, tsc ) - Attention - it´s enough to run the tests for the slice. Do not run all tests.
|
|
22
|
+
15. Update the Slice in the index.json to status 'Done' and remove assignment
|
|
23
|
+
16. If checks pass, commit ALL changes with message: `feat: [Slice Name]` and merge back to main as FF merge ( update
|
|
24
|
+
first )
|
|
25
|
+
17. Append your progress to `progress.txt` after each step in the iteration.
|
|
26
|
+
18. append your new learnings to frontend/AGENTS.md in a compressed form, reusable for future iterations. Only add learnings if they are not already there.
|
|
27
|
+
20. Finish the iteration.
|
|
28
|
+
|
|
5
29
|
---
|
|
6
30
|
|
|
7
31
|
## 0. Available Skills (Use These!)
|
package/templates/prompt.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# Ralph Agent Instructions
|
|
2
2
|
|
|
3
|
-
You are an autonomous software architect,
|
|
4
|
-
|
|
5
|
-
The structure defined in the Project-Skills is relevant.
|
|
3
|
+
You are an autonomous software architect, overseeing the sliced architecture and who works on which slice.
|
|
4
|
+
You assign tasks to workers. Only one task can be assigned and in status planned at a time.
|
|
6
5
|
|
|
7
6
|
## Your Task
|
|
8
7
|
|
|
9
|
-
1. find the most important next slice
|
|
10
|
-
2. if the slice is in status planned and not assigned, assign it to backend_worker (property assigned
|
|
11
|
-
3. if the
|
|
8
|
+
1. find the most important next slice by watching .slices/index.json
|
|
9
|
+
2. if the slice is in status planned and not assigned, assign it to backend_worker (property "assigned" ) and continue with backend/prompt.md. Ignore the rest of this file.
|
|
10
|
+
3. if the status is in status "InProgress" and assigned to backend_worker, updated started_time and continue with backend/prompt.md. Ignore the rest of this file.
|
|
11
|
+
4. if the status is "done" and assigned to "backend_worker", assign the task to "ui_worker" and move it back to status "planned". continue with frontend/prompt.md. Ignore the rest of this file.
|
|
12
|
+
4. if there is no task in status planned, return <promise>NO_TASKS</promise>
|