ma-agents 2.18.0 → 2.19.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 CHANGED
@@ -61,7 +61,7 @@ skills/code-review/
61
61
  | Joseph (MIL-STD-498) | `_bmad/skills/` | `generic` | `_bmad/bmm/agents/mil498.md` |
62
62
  | Antigravity | `_bmad/skills/` | `generic` | `_bmad/bmm/agents/antigravity.md` |
63
63
 
64
- ## Available Skills (25)
64
+ ## Available Skills (27)
65
65
 
66
66
  | Skill ID | Domain | Description |
67
67
  | :--- | :--- | :--- |
@@ -72,6 +72,8 @@ skills/code-review/
72
72
  | `test-accompanied-development` | Quality | Enforces "test-alongside" policy for every public method |
73
73
  | `code-documentation` | Quality | Enforces PEP 257, Doxygen, JSDoc, and XML standards |
74
74
  | `skill-creator` | Meta | Guide for creating new skills to extend agent capabilities |
75
+ | `document-revision-history` | Documentation | Manages revision history tables at the beginning of generated documents |
76
+ | `ai-audit-trail` | Audit | Tracks AI agent session activity, time spent, and token usage |
75
77
  | **Security** | | |
76
78
  | `python-security-skill` | Python | OWASP Top 10 2025 aligned guardrails for Python |
77
79
  | `js-ts-security-skill` | JS/TS | Security verification for JS/TS codebases (OWASP aligned) |
@@ -40,6 +40,16 @@ This defines the required DID sections and content expectations for each paragra
40
40
 
41
41
  Write the document in {document_output_language}, populating each template section. The OCD should be written in language accessible to users and stakeholders, minimizing technical jargon.
42
42
 
43
+ ### Revision History
44
+
45
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
46
+
47
+ ```markdown
48
+ | Version | Date | Author | Changes |
49
+ |---------|------|--------|---------|
50
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
51
+ ```
52
+
43
53
  ### Section 1: Scope
44
54
  - **1.1 Identification**: Extract system name, version, identifiers from PRD
45
55
  - **1.2 System overview**: Summarize the system purpose from the user's perspective
@@ -66,6 +66,16 @@ This defines the required DID sections and content expectations for each paragra
66
66
 
67
67
  Write the document in {document_output_language}, populating each template section.
68
68
 
69
+ ### Revision History
70
+
71
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
72
+
73
+ ```markdown
74
+ | Version | Date | Author | Changes |
75
+ |---------|------|--------|---------|
76
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
77
+ ```
78
+
69
79
  ### Section 1: Scope
70
80
  - **1.1 Identification**: Identify the CSCI by name, version, and project-unique identifier (as assigned in the SSDD)
71
81
  - **1.2 System overview**: Summarize the system and this CSCI's role within it, referencing the SSDD
@@ -46,6 +46,16 @@ This defines the required DID sections and content expectations for each paragra
46
46
 
47
47
  Write the document in {document_output_language}, populating each template section. **Important**: Each paragraph in Sections 4 and 5 shall identify applicable risks/uncertainties and plans for dealing with them.
48
48
 
49
+ ### Revision History
50
+
51
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
52
+
53
+ ```markdown
54
+ | Version | Date | Author | Changes |
55
+ |---------|------|--------|---------|
56
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
57
+ ```
58
+
49
59
  ### Section 1: Scope
50
60
  - **1.1 Identification**: Extract project name, version, identifiers from PRD
51
61
  - **1.2 System overview**: Summarize from Product Brief and PRD
@@ -56,6 +56,16 @@ This defines the required DID sections and content expectations for each paragra
56
56
 
57
57
  Write the document in {document_output_language}, populating each template section. Each requirement shall be assigned a project-unique identifier, be stated so that an objective test can be defined for it, and be annotated with qualification method(s) and traceability to system requirements.
58
58
 
59
+ ### Revision History
60
+
61
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
62
+
63
+ ```markdown
64
+ | Version | Date | Author | Changes |
65
+ |---------|------|--------|---------|
66
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
67
+ ```
68
+
59
69
  ### Section 1: Scope
60
70
  - **1.1 Identification**: Extract software name, version, CSCI identifiers from the SSDD, PRD, and Architecture
61
71
  - **1.2 System overview**: Summarize purpose, nature, development history from PRD. Identify this CSCI's role within the system
@@ -88,6 +88,16 @@ Based on {user_name}'s answers:
88
88
 
89
89
  Write the document in {document_output_language}, populating each template section.
90
90
 
91
+ ### Revision History
92
+
93
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
94
+
95
+ ```markdown
96
+ | Version | Date | Author | Changes |
97
+ |---------|------|--------|---------|
98
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
99
+ ```
100
+
91
101
  ### Section 1: Scope
92
102
  - **1.1 Identification**: Extract system name, version, and project-unique identifiers from PRD/Product Brief
93
103
  - **1.2 System overview**: Summarize system purpose, history, stakeholders, and operating sites from Product Brief and PRD
@@ -45,6 +45,16 @@ This defines the required DID sections and content expectations for each paragra
45
45
 
46
46
  Write the document in {document_output_language}, populating each template section. Keep requirements at the **system/subsystem level** — avoid low-level software implementation details. Each requirement shall be assigned a project-unique identifier, be stated so that an objective test can be defined for it, and be annotated with qualification method(s).
47
47
 
48
+ ### Revision History
49
+
50
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
51
+
52
+ ```markdown
53
+ | Version | Date | Author | Changes |
54
+ |---------|------|--------|---------|
55
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
56
+ ```
57
+
48
58
  ### Section 1: Scope
49
59
  - **1.1 Identification**: Extract system name, version, identifiers from PRD/Product Brief
50
60
  - **1.2 System overview**: Summarize system purpose, nature, and stakeholders
@@ -56,6 +56,16 @@ This defines the required DID sections and content expectations for each paragra
56
56
 
57
57
  Write the document in {document_output_language}, populating each template section. **Important**: Safety precautions (marked by WARNING or CAUTION) and security/privacy considerations shall be included as applicable throughout Sections 3 and 4.
58
58
 
59
+ ### Revision History
60
+
61
+ Before writing any content, add a **Revision History table** immediately after the document title. If this is a new document, create the table with version `1.0`. If updating an existing document, read the existing revision history and add a new row with an incremented version number and a summary of all changes made in this session. See the `document-revision-history` skill for full formatting rules.
62
+
63
+ ```markdown
64
+ | Version | Date | Author | Changes |
65
+ |---------|------|--------|---------|
66
+ | 1.0 | {date} | Agent ({model}) | Initial document generation |
67
+ ```
68
+
59
69
  ### Section 1: Scope
60
70
  - **1.1 Identification**: Extract system and software identifiers from PRD/Architecture
61
71
  - **1.2 System overview**: Summarize the system and the CSCI(s) being tested
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ma-agents",
3
- "version": "2.18.0",
3
+ "version": "2.19.0",
4
4
  "description": "NPX tool to install skills for AI coding agents (Claude Code, Gemini, Copilot, Kilocode, Cline, Cursor)",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -0,0 +1,148 @@
1
+ # AI Audit Trail
2
+
3
+ Track AI agent session activity in a project-level `AiAudit.md` file. This provides accountability and visibility into AI agent work — what was done, when, and the resources consumed.
4
+
5
+ ## Policy
6
+
7
+ ### 1. Always Maintain the Audit Log
8
+
9
+ At the **end of every significant agent session** (document generation, multi-step workflow, code changes), the agent MUST append an entry to `AiAudit.md` in the project root.
10
+
11
+ A "significant session" is any task that:
12
+ - Generates or substantially modifies a document
13
+ - Executes a multi-step workflow
14
+ - Makes changes across multiple files
15
+ - Takes more than a trivial amount of interaction
16
+
17
+ Single-question answers or trivial lookups do NOT require an audit entry.
18
+
19
+ ### 2. File Location
20
+
21
+ The audit log is always at:
22
+ ```
23
+ {project_root}/AiAudit.md
24
+ ```
25
+
26
+ If the file does not exist, create it with the header (see format below).
27
+
28
+ ### 3. File Format
29
+
30
+ ```markdown
31
+ # AI Audit Trail
32
+
33
+ This file tracks AI agent sessions, time spent, and resources consumed.
34
+
35
+ ---
36
+
37
+ ## Session: {session_title}
38
+
39
+ | Field | Value |
40
+ |-------|-------|
41
+ | **Date** | {YYYY-MM-DD} |
42
+ | **Agent** | {agent_name} ({model_name}) |
43
+ | **Task** | {brief_task_description} |
44
+ | **Duration** | {estimated_duration} |
45
+ | **Tokens (est.)** | Input: ~{input_tokens} / Output: ~{output_tokens} |
46
+ | **Files Modified** | {count} files |
47
+ | **Documents Generated** | {list_or_count} |
48
+ | **Status** | {Completed / Partial / Failed} |
49
+
50
+ ### Summary
51
+ {2-3 sentence summary of what was accomplished}
52
+
53
+ ### Files Touched
54
+ - `path/to/file1.md` — {action: created/updated/deleted}
55
+ - `path/to/file2.md` — {action}
56
+
57
+ ---
58
+ ```
59
+
60
+ ### 4. Field Definitions
61
+
62
+ | Field | Description | How to Determine |
63
+ |-------|-------------|-----------------|
64
+ | **Date** | Session date | Current date in `YYYY-MM-DD` format |
65
+ | **Agent** | Agent identity | The agent name and model (e.g., `Joseph (Claude Opus 4.6)`, `Claude Code (Claude Sonnet 4.6)`) |
66
+ | **Task** | What was requested | Brief description of the user's request |
67
+ | **Duration** | Estimated wall-clock time | Estimate from session start to end. Use ranges if uncertain (e.g., `~15-20 minutes`) |
68
+ | **Tokens (est.)** | Estimated token consumption | Provide best estimate of input/output tokens. Use `~` prefix to indicate approximation. If unknown, write `Not available` |
69
+ | **Files Modified** | Number of files changed | Count of files created, updated, or deleted |
70
+ | **Documents Generated** | Documents produced | List document names or count |
71
+ | **Status** | Outcome | `Completed` if all tasks done, `Partial` if some remain, `Failed` if blocked |
72
+
73
+ ### 5. Rules
74
+
75
+ 1. **Append only** — Never delete or modify previous session entries. The audit log is an append-only record.
76
+ 2. **One entry per session** — Do not create multiple entries for the same continuous work session. If a session spans multiple tasks, combine them into one entry.
77
+ 3. **Estimate honestly** — Token estimates are approximations. Round to the nearest thousand. If you cannot estimate, say so explicitly.
78
+ 4. **Session title** — Use a descriptive, unique title (e.g., `Generate SSDD v1.0`, `Fix SRS interface requirements`, `MIL-498 workflow audit`).
79
+ 5. **End of session** — Write the audit entry as the **last action** before presenting final results to the user.
80
+ 6. **Chronological order** — New entries go at the **bottom** of the file, maintaining chronological order.
81
+
82
+ ### 6. Duration Estimation
83
+
84
+ Since AI agents don't have built-in timers, use these guidelines:
85
+ - Note the time when you start the task (from system context or user message timestamps)
86
+ - Note the time when you finish
87
+ - If timestamps aren't available, estimate based on the complexity: quick task (~5 min), medium task (~15-30 min), large task (~1-2 hours)
88
+ - Always prefix with `~` to indicate it's an estimate
89
+
90
+ ### 7. Token Estimation
91
+
92
+ Provide your best estimate:
93
+ - **Input tokens**: Roughly proportional to the amount of context you consumed (files read, conversation history)
94
+ - **Output tokens**: Roughly proportional to the amount of text you generated (documents, code, messages)
95
+ - If precise counts are available from the environment, use them
96
+ - If not, estimate and note `(estimated)` next to the values
97
+
98
+ ## Example
99
+
100
+ ```markdown
101
+ # AI Audit Trail
102
+
103
+ This file tracks AI agent sessions, time spent, and resources consumed.
104
+
105
+ ---
106
+
107
+ ## Session: Generate SSDD v1.0
108
+
109
+ | Field | Value |
110
+ |-------|-------|
111
+ | **Date** | 2026-03-01 |
112
+ | **Agent** | Joseph (Claude Opus 4.6) |
113
+ | **Task** | Generate MIL-STD-498 SSDD document from project artifacts |
114
+ | **Duration** | ~25 minutes |
115
+ | **Tokens (est.)** | Input: ~45,000 / Output: ~12,000 |
116
+ | **Files Modified** | 1 file |
117
+ | **Documents Generated** | SSDD.md |
118
+ | **Status** | Completed |
119
+
120
+ ### Summary
121
+ Generated the System/Subsystem Design Description from PRD, architecture, and product brief artifacts. Conducted CSCI discovery interview identifying 5 CSCIs. All 6 DID sections populated with full requirements traceability.
122
+
123
+ ### Files Touched
124
+ - `_bmad-output/planning-artifacts/SSDD.md` — created
125
+
126
+ ---
127
+
128
+ ## Session: Update SRS per user feedback
129
+
130
+ | Field | Value |
131
+ |-------|-------|
132
+ | **Date** | 2026-03-02 |
133
+ | **Agent** | Joseph (Claude Opus 4.6) |
134
+ | **Task** | Update SRS interface requirements based on user review feedback |
135
+ | **Duration** | ~10 minutes |
136
+ | **Tokens (est.)** | Input: ~20,000 / Output: ~5,000 |
137
+ | **Files Modified** | 1 file |
138
+ | **Documents Generated** | SRS.md (updated) |
139
+ | **Status** | Completed |
140
+
141
+ ### Summary
142
+ Updated Section 3.3 interface requirements to add 4 new external interfaces identified during user review. Updated traceability matrix in Section 5.
143
+
144
+ ### Files Touched
145
+ - `_bmad-output/planning-artifacts/SRS.md` — updated
146
+
147
+ ---
148
+ ```
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "AI Audit Trail",
3
+ "description": "Tracks AI agent session activity, time spent, and token usage in a project-level AiAudit.md log file.",
4
+ "version": "1.0.0",
5
+ "author": "Antigravity",
6
+ "tags": [
7
+ "audit",
8
+ "logging",
9
+ "time-tracking",
10
+ "tokens",
11
+ "accountability",
12
+ "project-management"
13
+ ],
14
+ "applies_when": [
15
+ "starting a new agent task or workflow",
16
+ "completing a document generation session",
17
+ "finishing any multi-step agent workflow"
18
+ ],
19
+ "always_load": true
20
+ }
@@ -0,0 +1,100 @@
1
+ # Document Revision History
2
+
3
+ Manage a revision history table at the beginning of every generated or updated document. This ensures traceability of changes across document versions.
4
+
5
+ ## Policy
6
+
7
+ ### 1. Revision History Table Required
8
+
9
+ Every document generated or updated by the agent MUST include a **Revision History** table immediately after the document title (before the Table of Contents or Section 1).
10
+
11
+ ### 2. Table Format
12
+
13
+ Use the following markdown table format:
14
+
15
+ ```markdown
16
+ | Version | Date | Author | Changes |
17
+ |---------|------|--------|---------|
18
+ | 1.0 | 2026-03-02 | Agent (Claude) | Initial document generation |
19
+ ```
20
+
21
+ ### 3. Column Definitions
22
+
23
+ | Column | Description |
24
+ |--------|-------------|
25
+ | **Version** | Document version number (e.g., 1.0, 1.1, 2.0). Use semantic versioning: major version for structural changes, minor for content updates |
26
+ | **Date** | Date of the change in `YYYY-MM-DD` format |
27
+ | **Author** | Who made the change — use `Agent (<model>)` for AI-generated content, or the user's name for user-directed changes |
28
+ | **Changes** | Brief summary of ALL changes made in this version. One line per version — consolidate multiple changes into a single descriptive entry |
29
+
30
+ ### 4. Rules for New Documents
31
+
32
+ When **generating a new document** for the first time:
33
+ - Add the revision history table immediately after the document title
34
+ - Set version to `1.0`
35
+ - Set date to today's date
36
+ - Set author to `Agent (<model>)` where `<model>` is the AI model name
37
+ - Set changes to `Initial document generation`
38
+
39
+ ### 5. Rules for Updated Documents
40
+
41
+ When **updating an existing document**:
42
+ - Read the existing revision history table
43
+ - Determine the new version number:
44
+ - **Minor increment** (e.g., 1.0 → 1.1): Content updates, corrections, additions to existing sections
45
+ - **Major increment** (e.g., 1.1 → 2.0): Structural changes, section reorganization, significant rewrites
46
+ - Add a **single new row** summarizing ALL changes made in this update session
47
+ - Do NOT create multiple rows for changes made in the same session — consolidate them into one line
48
+ - Preserve all previous revision history entries
49
+
50
+ ### 6. Changes Column Guidelines
51
+
52
+ Write concise but descriptive change summaries:
53
+
54
+ **Good examples:**
55
+ - `Added Sections 7-8 (impacts, analysis), expanded interface requirements to cover categories a-g`
56
+ - `Updated capability requirements based on user feedback, added 3 new interfaces`
57
+ - `Fixed traceability matrix, corrected section numbering`
58
+
59
+ **Bad examples:**
60
+ - `Updated document` (too vague)
61
+ - `Changed section 3.2.1 requirement SRS-CAP-001 description from X to Y, then changed 3.2.2...` (too granular — summarize)
62
+
63
+ ### 7. Placement
64
+
65
+ The revision history table MUST appear in this order within the document:
66
+
67
+ ```markdown
68
+ # Document Title
69
+
70
+ | Version | Date | Author | Changes |
71
+ |---------|------|--------|---------|
72
+ | 1.0 | 2026-03-02 | Agent (Claude) | Initial document generation |
73
+
74
+ > MIL-STD-498 or other document metadata...
75
+
76
+ ## Table of Contents (if applicable)
77
+
78
+ ## 1. Scope
79
+ ...
80
+ ```
81
+
82
+ ### 8. Multi-Author Sessions
83
+
84
+ If the user provides their name or the changes are user-directed corrections:
85
+ - Use the user's name as author
86
+ - If both the agent and user contribute in the same session, use `{user_name} / Agent (<model>)`
87
+
88
+ ## Example
89
+
90
+ A document updated twice would have:
91
+
92
+ ```markdown
93
+ # Software Requirements Specification (SRS)
94
+
95
+ | Version | Date | Author | Changes |
96
+ |---------|------|--------|---------|
97
+ | 1.0 | 2026-03-01 | Agent (Claude) | Initial document generation from SSDD and PRD artifacts |
98
+ | 1.1 | 2026-03-02 | Joseph / Agent (Claude) | Added 4 interface requirements per user feedback, corrected capability traceability to SSDD |
99
+ | 2.0 | 2026-03-15 | Agent (Claude) | Major rewrite: restructured CSCI decomposition after SSDD v2.0, updated all requirement IDs |
100
+ ```
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "Document Revision History",
3
+ "description": "Manages a revision history table at the beginning of generated documents, tracking changes per version.",
4
+ "version": "1.0.0",
5
+ "author": "Antigravity",
6
+ "tags": [
7
+ "documentation",
8
+ "revision-history",
9
+ "version-tracking",
10
+ "mil-std-498",
11
+ "change-management"
12
+ ],
13
+ "applies_when": [
14
+ "generating or updating planning documents",
15
+ "creating specification or design documents",
16
+ "modifying existing markdown documents that have a revision history table"
17
+ ]
18
+ }