You are helping an enterprise architect create an Agile Security document using Open Agile Architecture (O-AA, C208) — Axiom 16 Secure by Design, C208 Ch. 4.6, and the O-AA Security Playbook (G216). This approach embeds security into the product sprint rhythm rather than treating it as a separate gate or phase — security becomes a backlog item, not an afterthought.
User Input
$ARGUMENTS
Trigger Guidance
Use this command when any of the following conditions are met:
Client wants security embedded in sprint rhythm rather than separate security phases
Product requires continuous compliance evidence generated alongside development artifacts
Threat modeling needs to be a backlog item, not a one-time activity
Client operates in regulated environments (APRA, GDPR, APP, AI Act) with sprint-aligned compliance
Product involves AI/ML systems requiring algorithmic transparency and bias assessment per sprint
Do NOT use when:
Client requires traditional security audit with separate audit phases — use full TOGAF ADM with dedicated security phase
Multi-year security programme with 50+ review gates outside sprint cadence
Client needs standalone penetration testing or security assessment (use dedicated security tools instead)
Prerequisites: Read Foundational Artifacts
Note: Before generating, scan projects/ for existing project directories. For each project, list all ARC-*.md artifacts, check external/ for reference documents, and check 000-global/ for cross-project policies. If no external docs exist but they would improve output, ask the user.
RECOMMENDED (read if available, note if missing):
PRIN (Architecture Principles, in 000-global) — Extract: Security principles, compliance requirements, data classification standards
- If missing: warn user to run
$arckit-principles first
OAPR (Agile Product Architecture) — Extract: Product mission, guardrails, technology constraints
- If missing: note that product architecture context is limited
OAAL (O-AA ADM Lite) — Extract: Sprint plan, governance cadence, compliance mapping
- If missing: note that O-AA Lite context is not available
OASTR (Agile Strategy Canvas) — Extract: Risk profile, transformation risks, security strategy
- If missing: note that strategy context is limited
Prerequisites 1b: Read external documents and policies
Read any external documents listed in the project context (external/ files) — extract security policies, compliance requirements, threat models, regulatory obligations
Read any enterprise standards in projects/000-global/external/ — extract security standards, data classification policies, incident response procedures
Instructions
1. Identify or Create Project
Identify the target project from the hook context. If the user specifies a project that doesn't exist yet, create a new project:
- Use Glob to list
projects/*/ directories and find the highest NNN-* number (or start at 001 if none exist)
- Calculate the next number (zero-padded to 3 digits, e.g.,
002)
- Slugify the project name (lowercase, replace non-alphanumeric with hyphens, trim)
- Use the Write tool to create
projects/{NNN}-{slug}/README.md with the project name, ID, and date
- Also create
projects/{NNN}-{slug}/external/README.md with a note to place external reference documents here
- Set
PROJECT_ID = the 3-digit number, PROJECT_PATH = the new directory path
2. Read Template
Read the template (with user override support):
First, check if .arckit/templates-custom/agile-security-template.md exists in the project root
If found: Read the user's customized template (user override takes precedence)
If not found: Read .arckit/templates/agile-security-template.md (default)
Then, read .arckit/templates/_partials/RENDERING.md and resolve the template's <!-- DOC-CONTROL-HEADER --> marker to the Document Control partial it selects, applying the ${organisation_name} and ${default_classification} substitutions. Remove the marker and its comment from the output — a rendered artefact must never contain either.
Also apply the O-AA placeholder substitutions in .arckit/references/placeholder-substitutions.md (${project_issue_prefix}, ${safety_checklist_id}, ${references_dir}) wherever they appear in the template.
Tip: Users can customise templates with $arckit-customize agile-security
3. O-AA Agile Security Framework
O-AA agile security practice (C208 Axiom 16, Ch. 4.6, G216) establishes that:
Security as backlog items: Security work enters the product backlog as epics/features/stories — not a separate security workstream
Sprint-aligned compliance: Compliance evidence is generated continuously alongside development artifacts, not accumulated for end-of-phase audits
Threat modeling per sprint: Each sprint cycle includes threat model updates as a backlog item, not a one-time activity at project start
O-AA Axiom 16 (Secure by Design): security controls are designed into the product from Sprint 0, proportional to product risk — not bolted on at a compliance checkpoint
Shared security ownership: Security is the team's responsibility, not a dedicated security team's gate
4. Shared Artefact Definitions
The agile security command defines artefacts whose structure is inlined in agile-security-template.md:
security-backlog.yaml — security epics, stories, and sprint capacity allocation
threat-model.yaml — per-sprint threat model (STRIDE or equivalent)
compliance-evidence.yaml — sprint compliance evidence, always current
vision.yaml — architecture vision security constraints (inherited from $arckit-oaa-adm-lite)
5. Generate Agile Security Document
Create the Agile Security document following the template structure.
Document Control
Generate Document ID with node scripts/generate-document-id.mjs {P} OASEC --filename (canonical form: ARC-{P}-OASEC-v1.0)
Set owner, dates, status, classification
Review cycle: Per sprint cycle
Security Backlog Integration
Security epic categories: Data protection, authentication/authorization, encryption, monitoring/observability, incident response, compliance reporting
Sprint capacity: Target 20-30% of sprint capacity for security items (adjust based on risk profile)
Security story format: "As a [role], I want [security control] so that [threat mitigated]"
Acceptance criteria: Each security story includes testable security acceptance criteria
Threat Modeling per Sprint
Sprint 0 threat model: Initial threat model covering product architecture (STRIDE or equivalent)
Sprint N threat updates: Each sprint updates threat model based on new features, identified vulnerabilities, and environment changes
Threat model as backlog item: "Update threat model for Sprint N features" enters backlog each sprint
Automated threat detection: Integration with SAST/DAST tools feeding threat model updates
Compliance Evidence per Sprint
Evidence generation: Compliance evidence artifacts generated alongside feature development
Regulatory mapping: Map sprint deliverables to regulatory requirements (GDPR, APRA, APP, AI Act)
Continuous evidence: Evidence is never accumulated for audits — it's always current
Evidence structure: Standardized evidence format per sprint, inlined in agile-security-template.md
Security Architecture Guardrails
Non-negotiable constraints: Data encryption at rest/in transit, authentication requirements, logging standards
Technology standards: Approved security building blocks and libraries
Anti-patterns: Forbidden security approaches (e.g., rolling your own crypto, hardcoded credentials)
Security review gates: Lightweight sprint-level security reviews, not heavy-gate audits
AI/ML Security Considerations
Algorithmic transparency: ATRS compliance per sprint for AI/ML features
Bias and fairness: Automated bias testing in sprint CI/CD pipeline
Model security: Model poisoning, data leakage, and adversarial attack mitigations
Privacy preservation: Differential privacy, federated learning where applicable
6. External References
Populate the ## External References section per .arckit/references/citation-instructions.md. Every claim taken from an external/ document, a projects/000-global/external/ policy, or a web source MUST carry an inline [DOC_ID-CN] citation marker resolving to a Document Register row. The Open Group Open Agile Architecture standard (C208) MUST appear in the Document Register with its primary URL and the verification date.
7. Quality Gate
Before writing the file, read .arckit/references/quality-checklist.md and verify all Common Checks plus the OASEC per-type checks pass. Fix any failures before proceeding.
8. Write the Document
IMPORTANT: The Agile Security document will be a substantial document (typically 180-300 lines). You MUST use the Write tool to create the file, NOT output the full content in chat.
Create the file at:
projects/{P}/ARC-{P}-OASEC-v1.0.md
9. Show Summary to User
After writing the file, show a concise summary (NOT the full document):
## Agile Security Document Created
**Document**: `projects/{P}/ARC-{P}-OASEC-v1.0.md`
**Document ID**: ARC-{P}-OASEC-v1.0
### Security Backlog Profile
- **Security epic categories**: [N] categories defined
- **Sprint capacity target**: [X]% of sprint capacity
- **Regulatory mappings**: [N] frameworks mapped (GDPR, APRA, etc.)
### Threat Modeling
- **Initial threat model**: [N] threat categories, [N] identified threats
- **Per-sprint updates**: Threat model backlog item defined
- **Automated detection**: [Tools/integrations configured]
### Compliance Evidence
- **Evidence per sprint**: [N] evidence categories
- **Regulatory coverage**: [Frameworks covered]
- **Continuous audit trail**: [Evidence generation approach]
### Sprint Artifacts
- ✅ security-backlog.yaml
- ✅ threat-model.yaml
- ✅ compliance-evidence.yaml
### Synthesised From
- [✅/⚠️] Architecture Principles: ARC-000-PRIN-v[N].md
- [✅/⚠️] Product Architecture: ARC-{P}-OAPR-v[N].md
- [✅/⚠️] O-AA ADM Lite: ARC-{P}-OAAL-v[N].md
- [✅/⚠️] Agile Strategy: ARC-{P}-OASTR-v[N].md
### Next Steps
1. Create security epics for Sprint 0
2. Run initial threat model: STRIDE analysis for product architecture
3. Establish governance cadence: `$arckit-agile-governance`
4. Configure CI/CD security pipeline integration
**File location**: `projects/{P}/ARC-{P}-OASEC-v1.0.md`
Important Notes
Security as Backlog Items: Security is not a phase or gate in O-AA. It's backlog items that compete with feature work for sprint capacity. The team decides security priority alongside feature priority.
Sprint-Aligned Compliance: Compliance evidence is generated continuously. You never "catch up" before an audit — evidence is always current because it's produced alongside every sprint deliverable.
Threat Modeling is Living: The threat model updates each sprint. It's not a document you write once at project start. New features create new attack surfaces.
Sprint Artefacts: The security-backlog.yaml, threat-model.yaml, and compliance-evidence.yaml structures are defined inline in agile-security-template.md. Validate artefacts against those structures; they stay consistent with the traditional TOGAF commands without sharing schema files.
Use Write Tool: The Agile Security document is typically 180-300 lines. ALWAYS use the Write tool to create it.
Version Management: If an Agile Security document already exists (ARC-*-OASEC-v*.md), create a new version (v2.0) rather than overwriting.
Markdown escaping: When writing less-than or greater-than comparisons, always include a space after < or > (e.g., < 3 seconds, > 99.9% uptime) to prevent markdown renderers from interpreting them as HTML tags or emoji.
Suggested Next Steps
After completing this command, consider running:
$arckit-agile-governance -- Establish governance cadence including security review gates
$arckit-agile-strategy -- Align security strategy with dual transformation tracks
1---2name: arckit-agile-security3description: Embed security into agile sprint rhythm — threat modeling, compliance evidence, and security backlog items4---56You are helping an enterprise architect create an **Agile Security** document using Open Agile Architecture (O-AA, C208) — Axiom 16 Secure by Design, C208 Ch. 4.6, and the O-AA Security Playbook (G216). This approach embeds security into the product sprint rhythm rather than treating it as a separate gate or phase — security becomes a backlog item, not an afterthought.78## User Input910```text11$ARGUMENTS12```1314## Trigger Guidance1516Use this command when **any** of the following conditions are met:1718- Client wants **security embedded in sprint rhythm** rather than separate security phases1920- Product requires **continuous compliance evidence** generated alongside development artifacts2122- **Threat modeling** needs to be a backlog item, not a one-time activity2324- Client operates in regulated environments (APRA, GDPR, APP, AI Act) with **sprint-aligned compliance**2526- Product involves AI/ML systems requiring **algorithmic transparency and bias assessment** per sprint2728**Do NOT use** when:2930- Client requires traditional security audit with separate audit phases — use full TOGAF ADM with dedicated security phase3132- Multi-year security programme with 50+ review gates outside sprint cadence3334- Client needs standalone penetration testing or security assessment (use dedicated security tools instead)3536## Prerequisites: Read Foundational Artifacts3738> **Note**: Before generating, scan `projects/` for existing project directories. For each project, list all `ARC-*.md` artifacts, check `external/` for reference documents, and check `000-global/` for cross-project policies. If no external docs exist but they would improve output, ask the user.3940**RECOMMENDED** (read if available, note if missing):4142- **PRIN** (Architecture Principles, in 000-global) — Extract: Security principles, compliance requirements, data classification standards4344 - If missing: warn user to run `$arckit-principles` first4546- **OAPR** (Agile Product Architecture) — Extract: Product mission, guardrails, technology constraints4748 - If missing: note that product architecture context is limited4950- **OAAL** (O-AA ADM Lite) — Extract: Sprint plan, governance cadence, compliance mapping5152 - If missing: note that O-AA Lite context is not available5354- **OASTR** (Agile Strategy Canvas) — Extract: Risk profile, transformation risks, security strategy5556 - If missing: note that strategy context is limited5758### Prerequisites 1b: Read external documents and policies5960- Read any **external documents** listed in the project context (`external/` files) — extract security policies, compliance requirements, threat models, regulatory obligations6162- Read any **enterprise standards** in `projects/000-global/external/` — extract security standards, data classification policies, incident response procedures6364## Instructions6566### 1. Identify or Create Project6768Identify the target project from the hook context. If the user specifies a project that doesn't exist yet, create a new project:69701. Use Glob to list `projects/*/` directories and find the highest `NNN-*` number (or start at `001` if none exist)712. Calculate the next number (zero-padded to 3 digits, e.g., `002`)723. Slugify the project name (lowercase, replace non-alphanumeric with hyphens, trim)734. Use the Write tool to create `projects/{NNN}-{slug}/README.md` with the project name, ID, and date745. Also create `projects/{NNN}-{slug}/external/README.md` with a note to place external reference documents here756. Set `PROJECT_ID` = the 3-digit number, `PROJECT_PATH` = the new directory path7677### 2. Read Template7879**Read the template** (with user override support):8081- **First**, check if `.arckit/templates-custom/agile-security-template.md` exists in the project root8283- **If found**: Read the user's customized template (user override takes precedence)8485- **If not found**: Read `.arckit/templates/agile-security-template.md` (default)8687- **Then**, read `.arckit/templates/_partials/RENDERING.md` and resolve the template's `<!-- DOC-CONTROL-HEADER -->` marker to the Document Control partial it selects, applying the `${organisation_name}` and `${default_classification}` substitutions. Remove the marker and its comment from the output — a rendered artefact must never contain either.8889- **Also** apply the O-AA placeholder substitutions in `.arckit/references/placeholder-substitutions.md` (`${project_issue_prefix}`, `${safety_checklist_id}`, `${references_dir}`) wherever they appear in the template.9091> **Tip**: Users can customise templates with `$arckit-customize agile-security`9293### 3. O-AA Agile Security Framework9495O-AA agile security practice (C208 Axiom 16, Ch. 4.6, G216) establishes that:9697- **Security as backlog items**: Security work enters the product backlog as epics/features/stories — not a separate security workstream9899- **Sprint-aligned compliance**: Compliance evidence is generated continuously alongside development artifacts, not accumulated for end-of-phase audits100101- **Threat modeling per sprint**: Each sprint cycle includes threat model updates as a backlog item, not a one-time activity at project start102103- **O-AA Axiom 16 (Secure by Design)**: security controls are designed into the product from Sprint 0, proportional to product risk — not bolted on at a compliance checkpoint104105- **Shared security ownership**: Security is the team's responsibility, not a dedicated security team's gate106107### 4. Shared Artefact Definitions108109The agile security command defines artefacts whose structure is inlined in `agile-security-template.md`:110111- **`security-backlog.yaml`** — security epics, stories, and sprint capacity allocation112113- **`threat-model.yaml`** — per-sprint threat model (STRIDE or equivalent)114115- **`compliance-evidence.yaml`** — sprint compliance evidence, always current116117- **`vision.yaml`** — architecture vision security constraints (inherited from `$arckit-oaa-adm-lite`)118119### 5. Generate Agile Security Document120121Create the Agile Security document following the template structure.122123#### Document Control124125- Generate Document ID with `node scripts/generate-document-id.mjs {P} OASEC --filename` (canonical form: `ARC-{P}-OASEC-v1.0`)126127- Set owner, dates, status, classification128129- Review cycle: Per sprint cycle130131#### Security Backlog Integration132133- **Security epic categories**: Data protection, authentication/authorization, encryption, monitoring/observability, incident response, compliance reporting134135- **Sprint capacity**: Target 20-30% of sprint capacity for security items (adjust based on risk profile)136137- **Security story format**: "As a [role], I want [security control] so that [threat mitigated]"138139- **Acceptance criteria**: Each security story includes testable security acceptance criteria140141#### Threat Modeling per Sprint142143- **Sprint 0 threat model**: Initial threat model covering product architecture (STRIDE or equivalent)144145- **Sprint N threat updates**: Each sprint updates threat model based on new features, identified vulnerabilities, and environment changes146147- **Threat model as backlog item**: "Update threat model for Sprint N features" enters backlog each sprint148149- **Automated threat detection**: Integration with SAST/DAST tools feeding threat model updates150151#### Compliance Evidence per Sprint152153- **Evidence generation**: Compliance evidence artifacts generated alongside feature development154155- **Regulatory mapping**: Map sprint deliverables to regulatory requirements (GDPR, APRA, APP, AI Act)156157- **Continuous evidence**: Evidence is never accumulated for audits — it's always current158159- **Evidence structure**: Standardized evidence format per sprint, inlined in `agile-security-template.md`160161#### Security Architecture Guardrails162163- **Non-negotiable constraints**: Data encryption at rest/in transit, authentication requirements, logging standards164165- **Technology standards**: Approved security building blocks and libraries166167- **Anti-patterns**: Forbidden security approaches (e.g., rolling your own crypto, hardcoded credentials)168169- **Security review gates**: Lightweight sprint-level security reviews, not heavy-gate audits170171#### AI/ML Security Considerations172173- **Algorithmic transparency**: ATRS compliance per sprint for AI/ML features174175- **Bias and fairness**: Automated bias testing in sprint CI/CD pipeline176177- **Model security**: Model poisoning, data leakage, and adversarial attack mitigations178179- **Privacy preservation**: Differential privacy, federated learning where applicable180181### 6. External References182183Populate the `## External References` section per `.arckit/references/citation-instructions.md`. Every claim taken from an `external/` document, a `projects/000-global/external/` policy, or a web source MUST carry an inline `[DOC_ID-CN]` citation marker resolving to a Document Register row. The Open Group *Open Agile Architecture* standard (C208) MUST appear in the Document Register with its primary URL and the verification date.184185### 7. Quality Gate186187Before writing the file, read `.arckit/references/quality-checklist.md` and verify all **Common Checks** plus the **OASEC** per-type checks pass. Fix any failures before proceeding.188189### 8. Write the Document190191**IMPORTANT**: The Agile Security document will be a substantial document (typically 180-300 lines). You MUST use the Write tool to create the file, NOT output the full content in chat.192193Create the file at:194195```text196projects/{P}/ARC-{P}-OASEC-v1.0.md197```198199### 9. Show Summary to User200201After writing the file, show a concise summary (NOT the full document):202203```markdown204## Agile Security Document Created205206**Document**: `projects/{P}/ARC-{P}-OASEC-v1.0.md`207**Document ID**: ARC-{P}-OASEC-v1.0208209### Security Backlog Profile210- **Security epic categories**: [N] categories defined211212- **Sprint capacity target**: [X]% of sprint capacity213214- **Regulatory mappings**: [N] frameworks mapped (GDPR, APRA, etc.)215216### Threat Modeling217- **Initial threat model**: [N] threat categories, [N] identified threats218219- **Per-sprint updates**: Threat model backlog item defined220221- **Automated detection**: [Tools/integrations configured]222223### Compliance Evidence224- **Evidence per sprint**: [N] evidence categories225226- **Regulatory coverage**: [Frameworks covered]227228- **Continuous audit trail**: [Evidence generation approach]229230### Sprint Artifacts231- ✅ security-backlog.yaml232233- ✅ threat-model.yaml234235- ✅ compliance-evidence.yaml236237### Synthesised From238- [✅/⚠️] Architecture Principles: ARC-000-PRIN-v[N].md239240- [✅/⚠️] Product Architecture: ARC-{P}-OAPR-v[N].md241242- [✅/⚠️] O-AA ADM Lite: ARC-{P}-OAAL-v[N].md243244- [✅/⚠️] Agile Strategy: ARC-{P}-OASTR-v[N].md245246### Next Steps2471. Create security epics for Sprint 02482. Run initial threat model: STRIDE analysis for product architecture2493. Establish governance cadence: `$arckit-agile-governance`2504. Configure CI/CD security pipeline integration251252**File location**: `projects/{P}/ARC-{P}-OASEC-v1.0.md`253```254255## Important Notes2562571. **Security as Backlog Items**: Security is not a phase or gate in O-AA. It's backlog items that compete with feature work for sprint capacity. The team decides security priority alongside feature priority.2582592. **Sprint-Aligned Compliance**: Compliance evidence is generated continuously. You never "catch up" before an audit — evidence is always current because it's produced alongside every sprint deliverable.2602613. **Threat Modeling is Living**: The threat model updates each sprint. It's not a document you write once at project start. New features create new attack surfaces.2622634. **Sprint Artefacts**: The `security-backlog.yaml`, `threat-model.yaml`, and `compliance-evidence.yaml` structures are defined inline in `agile-security-template.md`. Validate artefacts against those structures; they stay consistent with the traditional TOGAF commands without sharing schema files.2642655. **Use Write Tool**: The Agile Security document is typically 180-300 lines. ALWAYS use the Write tool to create it.2662676. **Version Management**: If an Agile Security document already exists (`ARC-*-OASEC-v*.md`), create a new version (v2.0) rather than overwriting.2682697. **Markdown escaping**: When writing less-than or greater-than comparisons, always include a space after `<` or `>` (e.g., `< 3 seconds`, `> 99.9% uptime`) to prevent markdown renderers from interpreting them as HTML tags or emoji.270271## Suggested Next Steps272273After completing this command, consider running:274275- `$arckit-agile-governance` -- Establish governance cadence including security review gates276- `$arckit-agile-strategy` -- Align security strategy with dual transformation tracks