Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
{
"name": "bitwarden-security-engineer",
"source": "./plugins/bitwarden-security-engineer",
"version": "1.3.0",
"version": "1.4.0",
"description": "Application security engineering assistant for vulnerability triage, threat modeling, and secure code analysis."
},
{
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ A curated collection of plugins for AI-assisted development at Bitwarden. Enable
| [bitwarden-devops-engineer](plugins/bitwarden-devops-engineer/) | 0.1.5 | DevOps engineering assistant: workflow compliance linting, action security auditing, and org-wide CI/CD remediation |
| [bitwarden-init](plugins/bitwarden-init/) | 1.2.2 | Initialize and enhance CLAUDE.md files with Bitwarden's standardized template format |
| [bitwarden-product-analyst](plugins/bitwarden-product-analyst/) | 0.1.5 | Product analyst agent for creating comprehensive Bitwarden requirements documents from multiple sources |
| [bitwarden-security-engineer](plugins/bitwarden-security-engineer/) | 1.3.0 | Application security engineering: vulnerability triage, threat modeling, and secure code analysis |
| [bitwarden-security-engineer](plugins/bitwarden-security-engineer/) | 1.4.0 | Application security engineering: vulnerability triage, threat modeling, and secure code analysis |
| [bitwarden-software-engineer](plugins/bitwarden-software-engineer/) | 1.0.0 | Software engineer agent for a Bitwarden product team. Implements stories, tasks, and bugs with code quality, performance, security, and team comms in mind. |
| [bitwarden-testing-tools](plugins/bitwarden-testing-tools/) | 1.0.0 | Testing tools for analyzing and improving test quality across Bitwarden's repositories. |
| [claude-config-validator](plugins/claude-config-validator/) | 1.1.1 | Validates Claude Code configuration files for security, structure, and quality |
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "bitwarden-security-engineer",
"version": "1.3.0",
"version": "1.4.0",
"description": "Application security engineering assistant for vulnerability triage, threat modeling, and secure code analysis at Bitwarden.",
"author": {
"name": "Bitwarden",
Expand Down
6 changes: 6 additions & 0 deletions plugins/bitwarden-security-engineer/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to the `bitwarden-security-engineer` plugin will be document
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.4.0] - 2026-07-28

### Changed

- `bitwarden-security-context`, `reviewing-security-architecture`, and `threat-modeling` now perform the ADR-alignment check by invoking `Skill(bitwarden-planning-tools:consulting-adrs)` instead of reading a local `references/adr-alignment.md`. Removed that reference file; the shared rule now lives in the `consulting-adrs` skill, which returns structured conflict/gap/aligned findings with cited ADRs. Requires the `bitwarden-planning-tools` plugin (1.0.0+).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎨 SUGGESTED: Changelog taxonomy is still stale β€” omits stale-reference.

Details and fix

The "Fix stale finding taxonomy" commit updated both SKILL.md call sites to the four tokens consulting-adrs actually emits (conflict / gap / stale-reference / aligned, per plugins/bitwarden-planning-tools/README.md:15), but this changelog line still describes three.

Suggested change
- `bitwarden-security-context`, `reviewing-security-architecture`, and `threat-modeling` now perform the ADR-alignment check by invoking `Skill(bitwarden-planning-tools:consulting-adrs)` instead of reading a local `references/adr-alignment.md`. Removed that reference file; the shared rule now lives in the `consulting-adrs` skill, which returns structured conflict/gap/aligned findings with cited ADRs. Requires the `bitwarden-planning-tools` plugin (1.0.0+).
- `bitwarden-security-context`, `reviewing-security-architecture`, and `threat-modeling` now perform the ADR-alignment check by invoking `Skill(bitwarden-planning-tools:consulting-adrs)` instead of reading a local `references/adr-alignment.md`. Removed that reference file; the shared rule now lives in the `consulting-adrs` skill, which returns structured conflict/gap/stale-reference/aligned findings with cited ADRs. Requires the `bitwarden-planning-tools` plugin (1.0.0+).


## [1.3.0] - 2026-07-21

### Added
Expand Down
10 changes: 0 additions & 10 deletions plugins/bitwarden-security-engineer/references/adr-alignment.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,4 @@ Full documentation: [Security Requirements](https://contributing.bitwarden.com/a

## Architecture Decision Records (ADRs)

Bitwarden's accepted architecture decisions are catalogued separately from the security principles above. See `${CLAUDE_PLUGIN_ROOT}/references/adr-alignment.md` for how security assessments should check alignment against them.
Bitwarden's accepted architecture decisions are catalogued separately from the security principles above. To check a design or change against them, invoke `Skill(bitwarden-planning-tools:consulting-adrs)` β€” it returns structured findings (conflict, gap, stale-reference, aligned) with cited ADRs.
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ At each boundary crossing:

## Architecture Decision Alignment

Before evaluating a design, check Bitwarden's Architecture Decision Records for existing decisions relevant to the components under review β€” see `${CLAUDE_PLUGIN_ROOT}/references/adr-alignment.md` for the ground rules (conflict = finding, undocumented significant decision = gap, verify status before citing). Applied to an architecture review specifically:
Before evaluating a design, check it against Bitwarden's Architecture Decision Records by invoking `Skill(bitwarden-planning-tools:consulting-adrs)` β€” it returns conflict / gap / stale-reference / aligned findings with cited ADRs. Applied to an architecture review specifically:

- **Cite it, don't just flag it.** When a design conflicts with an accepted ADR, name the ADR and state whether the implementation should change or the deviation needs its own ADR justifying the exception.
- **Watch for these gap triggers.** New trust boundaries, new auth patterns, new data stores, or other consequential choices with no corresponding ADR are exactly the kind of significant decision that should be flagged so it gets recorded, not just implemented.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Bitwarden follows a 4-phase engagement model for security work. This skill prima

### Phase 1: Initial Security Assessment (Engineering Team)

1. Check Bitwarden's Architecture Decision Records for existing decisions covering the system or components under review (see `${CLAUDE_PLUGIN_ROOT}/references/adr-alignment.md`) β€” a threat model should align with already-accepted architecture, not silently re-derive or contradict it
1. Check the system or components under review against Bitwarden's Architecture Decision Records by invoking `Skill(bitwarden-planning-tools:consulting-adrs)` β€” a threat model should align with already-accepted architecture, not silently re-derive or contradict it
2. Create data flow diagrams (Mermaid)
3. Define security requirements separate from product requirements
4. Propose security definitions (threat model + security goals)
Expand Down Expand Up @@ -119,7 +119,6 @@ Consult these references when writing or reviewing SDs:
- **`references/bitwarden-vocabulary.md`** β€” Standard terms, including **Passive Observer**, **Dominated Threat**, and **Exposure Window**
- **`references/security-principles.md`** β€” P01–P06, referenced by every goal's Rationale line
- **`references/stride-framework.md`** β€” STRIDE categories for structured threat identification
- **`${CLAUDE_PLUGIN_ROOT}/references/adr-alignment.md`** β€” Architecture Decision Record alignment checks shared across security-engineer skills

## When to Engage AppSec

Expand Down
Loading