dev-booster 1.10.0 โ†’ 1.12.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.
@@ -89,9 +89,12 @@ On activation only:
89
89
 
90
90
  Only after the user confirms should this booster continue the alignment process and determine whether the task is ready for implementation.
91
91
 
92
- ## ARTIFACT GENERATION & STATE BACKUP
93
- During your execution, you MUST create or update a machine-readable state file at `@booster-generated/plans/<slug-name>.md`.
94
- This file must continuously track the history, decisions, rules, and outcomes related to this booster's execution in a dense, non-conversational format.
95
- You must update this file silently in the background as the context evolves or when explicitly commanded by the user.
92
+ ## ARTIFACT GENERATION
93
+ During your execution, create a state file at `@booster-generated/planning/<slug>.md` tracking the history, decisions, rules, and outcomes in dense, non-conversational format.
94
+
95
+ - **Uniqueness rule:** If the slug already exists in `@booster-generated/planning/`, generate a new variation of the name instead of overwriting
96
+ - **Notification rule:** After writing, notify the user with: ๐Ÿ“ Registo em `@booster-generated/planning/<slug>.md`
97
+
98
+ Do NOT update this file silently in the background.
96
99
 
97
100
  **Reply:** On activation only, review the current conversation context, summarize what is already defined, identify risks and gaps, and ask whether the user wants to proceed with planner alignment. Do not emit the final readiness verdict until the user confirms. Always answer in the global language configured for the active LLM/environment.
@@ -0,0 +1,106 @@
1
+ # ๐Ÿ’พ BOOSTER: SAVE CONTEXT (STATE BACKUP)
2
+ You are being activated to compact the entire conversation context into a YAML state file.
3
+
4
+ ## 0. DEV BOOSTER ACTIVATION CONTRACT
5
+ This booster behaves as a state persistence mode, not as an automatic execution order.
6
+
7
+ If the user invokes this booster alone, or uses it only to activate the mode:
8
+ - Do NOT summarize or generate the context file immediately.
9
+ - Do NOT review or analyze the conversation history yet.
10
+ - Only confirm activation, explain what this booster does, and wait for confirmation to proceed.
11
+ - The activation response must follow the global language configured for the active LLM/environment.
12
+
13
+ Use this activation response format:
14
+
15
+ ```md
16
+ ## ๐Ÿค– [DEV BOOSTER // SAVE CONTEXT]
17
+
18
+ [Localized mode label]: Save Context
19
+ [Localized status label]: Armed
20
+
21
+ [Localized description of the booster's function]
22
+ [Localized confirmation prompt asking if the user wants to generate the context snapshot]
23
+ ```
24
+
25
+ Formatting rules for this activation:
26
+ - `Mode` and `Status` must always be rendered on separate lines.
27
+ - Do NOT merge labels into a single sentence or paragraph.
28
+ - Keep each activation block on its own line.
29
+
30
+ Only proceed to generate the context file after the user explicitly confirms.
31
+
32
+ ## 1. EXECUTION PROTOCOL
33
+
34
+ When the user confirms, you MUST:
35
+
36
+ 1. **Read the full conversation context** โ€” every decision, business rule, code change, blocker, and pending task discussed so far.
37
+ 2. **Compact everything into YAML** โ€” dense, machine-readable format optimized for LLM parsing.
38
+ 3. **Generate the file** at `@booster-generated/saved-context/context-<slug>.yaml`
39
+ 4. **Notify the user** and stop โ€” do NOT continue the previous task, do NOT ask follow-up questions.
40
+
41
+ ## 2. YAML STRUCTURE (MANDATORY)
42
+
43
+ The generated YAML must follow this EXACT structure:
44
+
45
+ ```yaml
46
+ meta:
47
+ created_at: "<timestamp ISO 8601>"
48
+ objective: "<objective of the conversation so far>"
49
+ booster: "save-context"
50
+
51
+ project:
52
+ name: "<project name>"
53
+ stack:
54
+ - "<technology 1>"
55
+ - "<technology 2>"
56
+
57
+ session:
58
+ current_goal: "<what is being done right now>"
59
+ status: "<in_progress | done | paused>"
60
+ summary: "<compact summary of what was discussed, max 3 paragraphs, dense>"
61
+
62
+ phases:
63
+ - booster: "<booster name used>"
64
+ summary: "<what was done, decided, or discussed in this phase>"
65
+ decisions:
66
+ - "<decision 1>"
67
+ - "<decision 2>"
68
+ artifacts:
69
+ - "@booster-generated/<path>/<file>.md"
70
+ files_changed:
71
+ - path: "<file path>"
72
+ reason: "<why it was changed>"
73
+ pending:
74
+ - "<pending item 1>"
75
+ - "<pending item 2>"
76
+
77
+ business_rules:
78
+ - "<business rule 1>"
79
+ - "<business rule 2>"
80
+
81
+ blockers:
82
+ - "<blocker 1 if any>"
83
+
84
+ next_steps:
85
+ - "<next step 1>"
86
+ - "<next step 2>"
87
+
88
+ instruction: |
89
+ You received this file as a context snapshot.
90
+ Read the entire YAML content.
91
+ Give a brief summary of where the project is.
92
+ Do NOT generate code.
93
+ Do NOT suggest improvements.
94
+ Do NOT continue any task.
95
+ Wait for the user's next command.
96
+ ```
97
+
98
+ ## ARTIFACT GENERATION
99
+ During your execution, create a state file at `@booster-generated/saved-context/context-<slug>.yaml` with the full conversation snapshot in YAML format.
100
+
101
+ - **Uniqueness rule:** If the slug already exists in `@booster-generated/saved-context/`, generate a new variation of the name instead of overwriting
102
+ - **Notification rule:** After writing, notify the user with: ๐Ÿ“ Context saved at `@booster-generated/saved-context/context-<slug>.yaml`
103
+
104
+ Do NOT update this file silently in the background.
105
+
106
+ **Reply:** On activation only, use the armed-mode banner above, explain what this booster does, and ask if the user wants to proceed. After confirmation, read the full conversation, generate the YAML snapshot, notify the path, and stop. Always answer in the global language configured for the active LLM/environment.
@@ -57,9 +57,12 @@ Rules:
57
57
  - `.devbooster/hub/skills/vulnerability-scanner/SKILL.md`
58
58
  - `.devbooster/hub/skills/red-team-tactics/SKILL.md`
59
59
 
60
- ## ARTIFACT GENERATION & STATE BACKUP
61
- During your execution, you MUST create or update a machine-readable state file at `@booster-generated/audits/<slug-name>.md`.
62
- This file must continuously track the history, decisions, rules, and outcomes related to this booster's execution in a dense, non-conversational format.
63
- You must update this file silently in the background as the context evolves or when explicitly commanded by the user.
60
+ ## ARTIFACT GENERATION
61
+ During your execution, create a state file at `@booster-generated/security/<slug>.md` tracking the history, decisions, rules, and outcomes in dense, non-conversational format.
62
+
63
+ - **Uniqueness rule:** If the slug already exists in `@booster-generated/security/`, generate a new variation of the name instead of overwriting
64
+ - **Notification rule:** After writing, notify the user with: ๐Ÿ“ Registo em `@booster-generated/security/<slug>.md`
65
+
66
+ Do NOT update this file silently in the background.
64
67
 
65
68
  **Reply:** On activation only, use the armed-mode banner above. On the first real task, load the minimum required security context based on the user's pain, then execute.
@@ -26,7 +26,7 @@ def parse_diagnostics(file_path):
26
26
 
27
27
  # Categorias consideradas essenciais para o funcionamento/performance
28
28
  CRITICAL_CATEGORIES = {"Correctness", "Performance", "Security", "Next.js", "Bundle Size"}
29
-
29
+
30
30
  # Regras que sรฃo puramente estรฉticas/opcionais (mesmo que caiam em Architecture)
31
31
  COSMETIC_RULES_PREFIXES = ("design-", "no-pure-black-")
32
32
 
@@ -37,7 +37,7 @@ def parse_diagnostics(file_path):
37
37
  rule = diag.get('rule', 'unknown')
38
38
  category = diag.get('category', 'Unknown')
39
39
  severity = diag.get('severity', 'warning')
40
-
40
+
41
41
  is_cosmetic = any(rule.startswith(prefix) for prefix in COSMETIC_RULES_PREFIXES)
42
42
 
43
43
  # Se for error de verdade ou uma categoria crรญtica (e nรฃo for puramente cosmรฉtico)
@@ -49,7 +49,7 @@ def parse_diagnostics(file_path):
49
49
  cosmetic_counts[rule] += 1
50
50
 
51
51
  # === GERAร‡รƒO DO RELATร“RIO MOLDADO ===
52
-
52
+
53
53
  print("### ๐Ÿ”ด Aร‡รƒO IMEDIATA (Erros Crรญticos)")
54
54
  if not critical_items:
55
55
  print("Nenhum erro crรญtico de performance ou lรณgica encontrado nas alteraรงรตes.\n")
@@ -69,9 +69,9 @@ def parse_diagnostics(file_path):
69
69
  else:
70
70
  for rule, count in sorted(cosmetic_counts.items(), key=lambda x: x[1], reverse=True):
71
71
  print(f"- `{rule}`: {count} ocorrรชncia(s)")
72
-
72
+
73
73
  print("\n*Rodapรฉ: Conteรบdo extraรญdo do relatรณrio gerado diagnostics.json*")
74
74
 
75
75
  if __name__ == "__main__":
76
- target_file = sys.argv[1] if len(sys.argv) > 1 else "@booster-generated/diagnostics/review.json"
76
+ target_file = sys.argv[1] if len(sys.argv) > 1 else "@booster-generated/code-audit/diagnostics-review.json"
77
77
  parse_diagnostics(target_file)
@@ -30,6 +30,12 @@ It has been formatted as a code block to facilitate direct reading in the IDE.
30
30
  focused on a single surgical change at a time.
31
31
  โ€ข review.md -> Elite Audit. Triggers multi-agent orchestration to validate
32
32
  if a plan or code follows project standards.
33
+ โ€ข coder.md -> Co-Creative Coder. Debates folder patterns and architecture
34
+ ideas, writing code only under command.
35
+ โ€ข builder.md -> Builder Specialist. Executes implementation plans and writes
36
+ actual code surgically.
37
+ โ€ข save-context.md -> Save Context. Compacta toda a conversa em YAML para continuar
38
+ em um novo chat sem perda de contexto.
33
39
 
34
40
  ---
35
41
 
@@ -49,6 +55,7 @@ It has been formatted as a code block to facilitate direct reading in the IDE.
49
55
  [ ๐Ÿž FIX & QUALITY ]
50
56
 
51
57
  โ€ข debug.md -> Root Cause Analysis. Uses a hypothesis engine to systematically investigate bugs.
58
+ โ€ข diff-review.md -> Diff Review. Analisa o diff como um dev sรชnior revisando PR โ€” naming, padrรตes do projeto, complexidade e boas prรกticas.
52
59
  โ€ข code-audit.md -> Code Audit. Strict inspector for syntax, typing,
53
60
  and diagnostics (React Doctor) pre-PR.
54
61
  โ€ข testing.md -> Test Strategist. Defines coverage strategy (Unit, E2E)
@@ -117,6 +124,13 @@ Example:
117
124
 
118
125
  ---
119
126
 
127
+ ๐Ÿ’ก INSTANT ROUTING (SHORTCUT TRIGGERS):
128
+ Instead of dragging booster files, you can instantly activate any booster behavior contract
129
+ by typing its corresponding trigger in the chat (e.g., @Context, @Coder, @Builder, @Planning).
130
+ Refer to `.devbooster/rules/TRIGGERS.md` for the complete trigger dictionary.
131
+
132
+ ---
133
+
120
134
  ๐Ÿ’ก HOW TO UPDATE THE KIT:
121
135
  If this project already has Dev Booster installed and you want to receive a newer version of the kit,
122
136
  use in the terminal:
@@ -34,25 +34,9 @@
34
34
  - **Chat:** Follow the global language configured for the active LLM/environment.
35
35
  - **Logs, Code, Comments, Variables:** English, unless the project explicitly requires another convention.
36
36
 
37
- ## ๐Ÿ“š 5. PERSISTENCE (MEMORIALIZATION)
38
- - **THE TRIGGER:** `@SavePattern`
39
- 1. Extract the technical rule or pattern from the current context.
40
- 2. Document in Technical English.
41
- 3. Update/Persist specifically in `./.devbooster/rules/USER_PREFERENCES.md`.
42
-
43
- - **THE ARTIFACT TRIGGER:** `@SaveState`
44
- 1. When invoked, instantly update the machine-readable state file for the currently active booster (e.g., in `@booster-generated/...`).
45
- 2. Ensure the state file captures the latest architectural decisions, flow logic, and context in a dense, non-conversational format without prompt ping-pong.
46
-
47
- ### โœ… 5.1 TASK CAPTURE (DO LATER BACKLOG)
48
- - **THE TRIGGER:** `@LogTask`
49
- - **THE ACTION:**
50
- 1. Capture the identified technical task.
51
- 2. Update/Persist specifically in `./@booster-generated/tasks.md` (at the project root).
52
- 3. Follow this strict format when adding new items:
53
- `- [ ] Short title of the task.`
54
- ` Resumo: detailed explanation of the task.`
55
- ` Referรชncias: file paths and concepts related to the task.`
37
+ ## ๐Ÿ“š 5. PERSISTENCE & SHORTCUTS (TRIGGERS)
38
+ - **TRIGGER ROUTING:** Whenever the user references a `@` trigger (e.g., `@Coder`, `@SaveContext`, `@SavePattern`), you MUST refer specifically to `.devbooster/rules/TRIGGERS.md` to identify the trigger's contract, load the corresponding files, and execute the behavior mode or background action.
39
+ - **RESTRICTION:** Execute code edits, file writes, or log updates ONLY when explicitly instructed by the trigger contract or a direct user command.
56
40
 
57
41
  ---
58
42
  *Elite Sovereignty Framework - Conduct Governance 2026*
@@ -0,0 +1,48 @@
1
+ # ๐Ÿš€ DEV BOOSTER SHORTCUTS & TRIGGERS (DICTIONARY)
2
+ **Version:** 1.0 | **Focus:** Instant behavior routing and background utility execution.
3
+
4
+ Whenever the user references a `@` trigger, you MUST locate the trigger below, load the specified rules/contract, and instantly transition to that behavior mode or execute the defined action.
5
+
6
+ ---
7
+
8
+ ## ๐Ÿ‘ฅ 1. GOVERNANCE TRIGGERS
9
+ These triggers execute background utility tasks and update persistent rule or status files.
10
+
11
+ - **`@SavePattern`**
12
+ - **Action:** Extract newly resolved technical patterns or rules from the conversation.
13
+ - **Destination:** Append/Update in `.devbooster/rules/USER_PREFERENCES.md` (Technical English).
14
+
15
+ - **`@SaveContext`**
16
+ - **Action:** Compact the entire conversation into a YAML snapshot for chat continuity.
17
+ - **Destination:** `@booster-generated/saved-context/context-<slug>.yaml`
18
+ - **Trigger behavior:** Ativates `.devbooster/boosters/save-context.md` and follows its execution protocol.
19
+
20
+ - **`@LogTask`**
21
+ - **Action:** Capture pending tasks mentioned in the chat.
22
+ - **Destination:** Append to `@booster-generated/tasks.md` in the following strict format:
23
+ ```md
24
+ - [ ] Short title of the task.
25
+ Resumo: detailed explanation of the task.
26
+ Referรชncias: file paths and concepts related to the task.
27
+ ```
28
+
29
+ ---
30
+
31
+ ## โšก 2. BOOSTER SHORTCUT TRIGGERS
32
+ These triggers instantly activate specific booster behavior contracts without requiring the user to manually load the booster files. Upon invocation, immediately read the corresponding booster file in `.devbooster/boosters/` and follow its execution instructions.
33
+
34
+ - **`@Context`** โž” Actives `.devbooster/boosters/context.md` (Silent Sponge context mapping).
35
+ - **`@Coder`** โž” Activates `.devbooster/boosters/coder.md` (Co-Creative design/writing).
36
+ - **`@Builder`** โž” Activates `.devbooster/boosters/builder.md` (Senior plan audit & execution).
37
+ - **`@Planning`** โž” Activates `.devbooster/boosters/planning.md` (Risk & readiness check).
38
+ - **`@Implementation`** โž” Activates `.devbooster/boosters/implementation.md` (Sizing and plan writing).
39
+ - **`@Atomic`** โž” Activates `.devbooster/boosters/atomic.md` (Surgical step-by-step code writing).
40
+ - **`@Review`** โž” Activates `.devbooster/boosters/review.md` (Elite code and architecture audit).
41
+ - **`@ReviewDiff`** โž” Activates `.devbooster/boosters/diff-review.md` (Pre-PR code review with project standards).
42
+ - **`@Advisor`** โž” Activates `.devbooster/boosters/advisor.md` (Kit GPS / routing consultant).
43
+ - **`@Changelog`** โž” Activates `.devbooster/boosters/changelog.md` (Release notes generator).
44
+ - **`@Debug`** โž” Activates `.devbooster/boosters/debug.md` (Systematic RCA / hypothesis engine).
45
+ - **`@Deploy`** โž” Activates `.devbooster/boosters/deploy.md` (Pre-flight release validation).
46
+ - **`@Discovery`** โž” Activates `.devbooster/boosters/discovery.md` (Product/ideas brainstorm).
47
+ - **`@Investigation`** โž” Activates `.devbooster/boosters/investigation.md` (No-code repo structure mapping).
48
+ - **`@Doc`** โž” Activates `.devbooster/boosters/global-documentation.md` (Universal spec generation).
@@ -13,7 +13,7 @@ Execute each step in order. Do not skip steps. Do not ask for confirmation betwe
13
13
 
14
14
  ### STEP 1 โ€” Read the Governance Protocol
15
15
  Read `.devbooster/rules/PROTOCOL.md` in full.
16
- This defines your conduct rules, communication style, and architectural constraints for this project.
16
+ This defines your conduct rules, communication style, and architectural constraints. It also delegates instant command shortcuts (like `@Coder`, `@Builder`) to `.devbooster/rules/TRIGGERS.md`.
17
17
 
18
18
  ### STEP 2 โ€” Bootstrap PROJECT.md
19
19
  Read `.devbooster/rules/PROJECT.md`.
@@ -1,55 +0,0 @@
1
- import fs from 'fs'
2
- import path from 'path'
3
- import { fileURLToPath } from 'url'
4
-
5
- const __dirname = path.dirname(fileURLToPath(import.meta.url))
6
- const ROOT_DIR = path.resolve(__dirname, '..')
7
- const SOURCE_DIR = path.join(ROOT_DIR, '.devbooster')
8
- const TEMPLATE_DIR = path.join(ROOT_DIR, 'template')
9
- const TEMPLATE_KIT_DIR = path.join(TEMPLATE_DIR, '.devbooster')
10
- const INIT_FILE = 'DEVBOOSTER_INIT.md'
11
-
12
- function copyDir(src, dest) {
13
- fs.mkdirSync(dest, { recursive: true })
14
-
15
- for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
16
- if (entry.name === '.DS_Store') continue
17
-
18
- const srcPath = path.join(src, entry.name)
19
- const destPath = path.join(dest, entry.name)
20
-
21
- if (entry.isDirectory()) {
22
- copyDir(srcPath, destPath)
23
- } else {
24
- fs.copyFileSync(srcPath, destPath)
25
- }
26
- }
27
- }
28
-
29
- function ensureExists(targetPath, label) {
30
- if (!fs.existsSync(targetPath)) {
31
- throw new Error(`${label} not found: ${targetPath}`)
32
- }
33
- }
34
-
35
- function run() {
36
- ensureExists(SOURCE_DIR, 'Source kit')
37
- ensureExists(path.join(ROOT_DIR, INIT_FILE), 'Root init file')
38
-
39
- fs.mkdirSync(TEMPLATE_DIR, { recursive: true })
40
- fs.rmSync(TEMPLATE_KIT_DIR, { recursive: true, force: true })
41
- copyDir(SOURCE_DIR, TEMPLATE_KIT_DIR)
42
- fs.copyFileSync(path.join(ROOT_DIR, INIT_FILE), path.join(TEMPLATE_DIR, INIT_FILE))
43
-
44
- console.log('โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ')
45
- console.log('โ”‚ DEV BOOSTER TEMPLATE SYNC โ”‚')
46
- console.log('โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ')
47
- console.log('')
48
- console.log('โ–ธ origem: .devbooster/')
49
- console.log('โ–ธ destino: template/.devbooster/')
50
- console.log(`โ–ธ init: template/${INIT_FILE}`)
51
- console.log('')
52
- console.log('status: sync concluido com sucesso')
53
- }
54
-
55
- run()