Commit graph

88 commits

Author SHA1 Message Date
Kjell Tore Guttormsen
b0df1ba304 test(linkedin): verify mcp-image text-overlay capability for carousel slides
Text overlay VERIFIED: Nano Banana Pro renders readable text on dark
gradient backgrounds at 3:4 aspect ratio (closest to LinkedIn 4:5).
Header and subtitle both legible. Mermaid Chart available but untested.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:29:28 +02:00
Kjell Tore Guttormsen
c65c0fdde2 docs(readme): update marketplace landing page for llm-security v6.1.0
Version badge 6.0.0→6.1.0, scanner count 16→21, knowledge docs 15→16,
added test count.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:26:21 +02:00
Kjell Tore Guttormsen
b4da0a4a0c docs(readme): replace npx references with node bin/ (not yet on npm)
npx llm-security requires npm publishing which hasn't happened.
Updated 3 references to use node bin/llm-security.mjs which works today.
CI templates and docs intentionally kept as-is (designed for future npm).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:20:44 +02:00
Kjell Tore Guttormsen
10b70dba10 feat(linkedin): reduce interactive steps in quick, react, pipeline commands
quick.md:
- Replace 8-option post type menu with context inference
- Auto-select CTA based on post type
- Remove proactive alternative version offering
- AskUserQuestion: 0 in main flow (was 1 implicit menu)

react.md:
- Auto-select strongest angle instead of 3-option AskUserQuestion
- Replace 6-option refinement AskUserQuestion with plain text options
- Same treatment for comparison path (Step 4b)
- AskUserQuestion: 1 in main flow (multi-URL only, was 3)

pipeline.md:
- Skip ideation ask if topic provided with command invocation
- Auto-propose planned topic without AskUserQuestion
- Inline angle selection (auto-select strongest)
- AskUserQuestion: 2 in main flow (ideation fallback + scheduling, was 3)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:18:50 +02:00
Kjell Tore Guttormsen
180e2fb4c2 feat(linkedin): reduce post.md to max 2 interactive steps
- Skip topic ask if user provided one with command invocation
- Auto-select strongest angle instead of 3-option AskUserQuestion menu
- Infer format from content type instead of interactive selection
- Present ONE draft without proactive alternative versions
- Replace refinement AskUserQuestion with plain text options

Net result: 0 AskUserQuestion calls in main flow (was 2).
User provides topic → gets ONE draft → clipboard-ready.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:16:49 +02:00
Kjell Tore Guttormsen
02fd29f685 docs(readme): update README body for v6.0+v6.1 — fix stale counts and tables
Badges, intro, commands, scanner table, Mermaid diagram, directory tree,
and knowledge base section all had counts frozen at v3-v4 era. Updated
to match actual filesystem: 21 scanners (10+11), 18 commands, 16 knowledge
files, 16 posture categories, 1264 tests. Added missing bin/, ci/, docs/
directories and all standalone scanners to directory tree.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:15:16 +02:00
Kjell Tore Guttormsen
dcaa0d13c6 feat(linkedin): add auto-clipboard on all content commands
Adds Bash to allowed-tools and clipboard-helper.mjs auto-copy to:
post.md, quick.md, react.md, pipeline.md, first-post.md,
video.md, multiplatform.md, carousel.md.

Each command auto-copies the final post/caption text to clipboard
after presenting the draft. Replaces manual copy-paste instructions
in first-post.md (=== COPY FROM HERE ===) with auto-copy.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:12:19 +02:00
Kjell Tore Guttormsen
214675d0a0 feat(linkedin): add clipboard-helper.mjs — cross-platform clipboard utility
TDD: 13 tests written first, then implementation.
Exports copyToClipboard(text) and clipboardAvailable() — never throws.
Supports darwin (pbcopy), win32 (clip), linux (xclip/xsel fallback).
Dual standalone/import mode following personalization-score.mjs pattern.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 15:08:42 +02:00
Kjell Tore Guttormsen
2c33e9cc64 feat(ci): add CI/CD integration — --fail-on, --compact, pipeline templates
Add threshold-based exit codes (--fail-on <severity>) and compact
output mode (--compact) to scan-orchestrator and CLI. Pipeline
templates for GitHub Actions, Azure DevOps, GitLab CI with SARIF
upload. CI/CD guide with Schrems II/NSM compliance documentation.
npm publish preparation (files whitelist, .npmignore). Policy ci
section for distributable CI defaults. Version 6.1.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 14:59:05 +02:00
Kjell Tore Guttormsen
d642203991 fix(scanners): use process.exitCode instead of process.exit() after stdout.write
process.exit() terminates before pipe buffers drain, truncating output
at 64KB when piped through another Node.js process on macOS. Affects
scan-orchestrator (SARIF output) and supply-chain-recheck-cli.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 14:11:31 +02:00
Kjell Tore Guttormsen
dea17a1c11 chore(release): bump to v6.0.0 — CAISS-readiness release with compliance, governance, CLI
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 14:03:10 +02:00
Kjell Tore Guttormsen
52d26ddb0b feat(cli): add standalone CLI wrapper — npx llm-security scan without Claude Code
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:58:25 +02:00
Kjell Tore Guttormsen
8ec320f40c feat(governance): add policy-as-code — .llm-security/policy.json for distributable hook configuration
New policy-loader.mjs reads .llm-security/policy.json with deep-merge against
defaults that exactly match existing hardcoded values. Integrated into all 7 hooks:
- pre-prompt-inject-scan: injection.mode (env var still takes precedence)
- post-session-guard: trifecta.mode, window_size, long_horizon_window
- pre-edit-secrets: secrets.additional_patterns
- pre-bash-destructive: destructive.additional_blocked
- pre-write-pathguard: pathguard.additional_protected
- pre-install-supply-chain: supply_chain.additional_blocked_packages
- post-mcp-verify: mcp.volume_threshold_bytes, mcp.trusted_servers

Backward compatible: no policy file = identical behavior to v5.1.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:37:02 +02:00
Kjell Tore Guttormsen
0439e0f650 feat(scanner): add AI-BOM generator — CycloneDX 1.6 format for AI supply chain transparency
New bom-builder.mjs discovers AI components (models, MCP servers, plugins,
knowledge files, hooks) and builds CycloneDX 1.6 JSON BOMs.
CLI entry point: node scanners/ai-bom-generator.mjs <target>.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:29:30 +02:00
Kjell Tore Guttormsen
269c14445c feat(governance): add structured JSONL audit trail with SIEM-ready schema
New audit-trail.mjs writes structured events to LLM_SECURITY_AUDIT_LOG path.
Integrated into post-session-guard at 6 warning emission points: trifecta,
escalation-after-input, data flow, volume threshold, slow-burn, behavioral drift.
No-op when env var not set — zero overhead for existing users.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:25:59 +02:00
Kjell Tore Guttormsen
2116e702df feat(scanner): add SARIF 2.1.0 output format to scan-orchestrator (--format sarif)
New sarif-formatter.mjs converts scan envelope to OASIS SARIF 2.1.0 standard.
Maps severity to SARIF levels, findings to results with locations and rules.
scan-orchestrator accepts --format sarif|json (default: json).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:22:59 +02:00
Kjell Tore Guttormsen
51b5371d6f feat(posture): add EU AI Act, NIST AI RMF, ISO 42001 compliance categories (14-16)
Extends posture scanner from 13 to 16 categories with three governance/compliance
checks. New categories are advisory (not in CRITICAL_CATEGORIES) — existing Grade A
projects remain Grade A. VERSION bumped to 6.0.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 13:17:25 +02:00
Kjell Tore Guttormsen
0765a5595e feat(scanner): add --benchmark mode to attack-simulator with structured reporting 2026-04-10 13:02:58 +02:00
Kjell Tore Guttormsen
e2c8924074 feat(knowledge): add MITRE ATLAS IDs to OWASP files + Norwegian regulatory context 2026-04-10 12:49:10 +02:00
Kjell Tore Guttormsen
5bb9d5bd11 feat(knowledge): add compliance-mapping document — EU AI Act, NIST AI RMF, ISO 42001 2026-04-10 12:29:14 +02:00
Kjell Tore Guttormsen
589711e29b feat(ms-ai-architect): tune weekly KB cron and update README
- Remove file limit (was 10, now processes all critical+high+medium)
- Increase max-turns to 200 and timeout to 60min
- Add medium priority to update filter
- Update README KB note to reflect automated weekly updates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-10 11:47:05 +02:00
Kjell Tore Guttormsen
34c6db36fa docs(architect): weekly KB update — 52 files refreshed (2026-04)
Key content changes:
- MLOps: MLflow 3 scorers expanded (RetrievalRelevance, Fluency, multi-turn judges)
- MLflow 3 A/B eval: mirror_traffic GA confirmed, new scorer catalog
- CI/CD: OIDC auth replaces deprecated --sdk-auth (Azure ML GitHub Actions)
- Agent framework A2A: updated SDK patterns (A2ACardResolver, BearerAuth)
- AG-UI backend tool rendering: accurate TOOL_CALL_* event shapes
- Computer Use agents: US region requirement, credentials patterns
- Purview governance: bulk term edit, expire/delete workflows
- CAF AI Secure: 3-phase structure confirmed current
- Copilot Studio: Claude Sonnet 4.5/4.6 GA, new orchestration controls
- M365 manifest: v1.26 GA (April 2026), copilotAgents node
- Power Platform: agent flow capacity enforcement corrected
- Azure Monitor: Simple Log Alerts GA, AMBA for policy-based alerting
- Security Copilot: SCU capacity model (400 SCU/1000 users)
- EU Data Boundary: all EU + EFTA countries confirmed
- gateway-multi-backend: added 4th topology, subscription-level quota note

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 11:31:11 +02:00
Kjell Tore Guttormsen
ff6a50d14f docs(architect): weekly KB update — 106 files refreshed (2026-04)
Updates across all 5 skills: ms-ai-advisor, ms-ai-engineering,
ms-ai-governance, ms-ai-security, ms-ai-infrastructure.

Key changes:
- Language Services (Custom Text Classification, Text Analytics, QnA):
  retirement warning 2029-03-31, migration guides to Foundry/GPT-4o
- Agentic Retrieval: 50M free reasoning tokens/month (Public Preview)
- Computer Use: Claude Sonnet 4.5 (preview) + OpenAI CUA models
- Agent Registry: Risks column (M365 E7), user-shared/org-published types
- Declarative agents: schema v1.5 → v1.6, Store validation requirements
- MLflow 3: 13 built-in LLM judges, production monitoring, Genie Code
- AG-UI HITL: ApprovalRequiredAIFunction (C#) + @tool(approval_mode) (Python)
- Entra ID Ignite 2025: Agent ID Admin/Developer RBAC roles, Conditional Access
- Security Copilot: 400 SCU/month per 1000 M365 E5 licenses, auto-provisioned
- Fast Transcription API: phrase lists, 14-language multi-lingual transcription
- Azure Monitor Workbooks: Bicep support, RBAC specifics
- Power Platform Copilot: data residency (Norway/Europe → EU DB, Bing → USA)
- RAG security-rbac: 4-approach table (GA + 3 preview access control methods)
- IaC MLOps: Well-Architected OE:05 principles, Bicep/Terraform patterns
- Translator: image file batch translation Preview (JPEG/PNG/BMP/WebP)

All 106 files: Last updated 2026-04 | Verified: MCP 2026-04

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 09:13:24 +02:00
Kjell Tore Guttormsen
dda86449fa fix(architect): groundedness API — remaining correction→mitigating fixes
Apply 3 additional parameter renames missed in main KB update:
- SDK: correction=True → mitigating=True
- SDK: response.corrected_text → response.correction_text
- JSON body: 'correction': false → 'mitigating': false

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 22:45:50 +02:00
Kjell Tore Guttormsen
2dc825b3cb docs(architect): KB follow-up — batch 3 content updates
Additional factual updates from batch 3 research:

- responsible-ai-training-awareness.md: module renamed
  "Azure AI Studio" → "Microsoft Foundry" (3 occurrences)
- transparency-documentation-standards.md: ISO/IEC 42001 scope expanded
  to include Copilot Studio, Microsoft Foundry, Security Copilot,
  GitHub Copilot, Dragon Copilot
- ai-act-compliance-guide.md: same ISO 42001 scope expansion
- human-in-the-loop-oversight.md: AI approval stages in Copilot Studio
  (GPT-o3 as AI approver, new Human in the loop connector)
- continuous-improvement-feedback-loops.md: MLflow 3 Feedback vs
  Expectation assessment types, Genie Code trace analysis

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 22:43:12 +02:00
Kjell Tore Guttormsen
ad8a411f38 docs(architect): weekly KB update — 66 files refreshed (2026-04)
Updated 66 stale knowledge base reference files (10 critical, 56 high)
across all 5 skills using Microsoft Learn MCP research.

Key factual updates:
- Groundedness Detection API: `correction` → `mitigating` param,
  `correctedText` → `correctionText` (breaking change)
- Copilot Studio: GPT-4.1 mini now default (was GPT-4o mini);
  Claude Sonnet 4.5 + Opus 4.5 added (experimental, 200K ctx)
- Agentic Retrieval: still public preview; 50M free tokens/month
- Azure security baselines: "Cognitive Services" → "Foundry Tools"
- Databricks: Delta Live Tables → Lakeflow Spark Declarative Pipelines
- MLflow 3 GenAI: new Feedback/Expectation data model
- Token tracking doc: "Azure OpenAI in Foundry Models through a gateway"
- Agent Registry: Risks column (M365 E7), Graph API (preview)
- Copilot DLP: new Entra AI Admin + Purview Data Security AI Admin roles
- ISO/IEC 42001: scope expanded to M365 Copilot, Foundry, Security Copilot
- Zero Trust: CAE now via Conditional Access, Strict Location Enforcement
- Purview: new Fabric Copilots/agents governance section
- AG-UI HITL: ApprovalRequiredAIFunction (C#), @tool approval_mode (Python)

All files: Last updated → 2026-04, *(Verified MCP 2026-04)* markers added.
Build registry: 1341 URLs from 387 files (+2 new URLs).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 22:41:26 +02:00
Kjell Tore Guttormsen
1793faa1f2 chore: remove llm-security-copilot from marketplace
Not a distributable plugin — Copilot CLI has no plugin mechanism.
Was an internal one-off port for a colleague, not a marketplace item.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 22:22:20 +02:00
Kjell Tore Guttormsen
f778558d40 docs(llm-security-copilot): add INSTALL.md with setup instructions
Step-by-step guide for Windows/macOS/Linux: prerequisites, hooks
registration, skills/agents setup, scanner CLI usage, env vars,
troubleshooting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 22:05:22 +02:00
Kjell Tore Guttormsen
f418a8fe08 feat(llm-security-copilot): port llm-security v5.1.0 to GitHub Copilot CLI
Full port of llm-security plugin for internal use on Windows with GitHub
Copilot CLI. Protocol translation layer (copilot-hook-runner.mjs)
normalizes Copilot camelCase I/O to Claude Code snake_case format — all
original hook scripts run unmodified.

- 8 hooks with protocol translation (stdin/stdout/exit code)
- 18 SKILL.md skills (Agent Skills Open Standard)
- 6 .agent.md agent definitions
- 20 scanners + 14 scanner lib modules (unchanged)
- 14 knowledge files (unchanged)
- 39 test files including copilot-port-verify.mjs (17 tests)
- Windows-ready: node:path, os.tmpdir(), process.execPath, no bash

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:56:10 +02:00
Kjell Tore Guttormsen
901bf0ae12 feat(ms-ai-architect): add local cron wrapper for weekly KB maintenance
Wrapper script that polls Microsoft Learn sitemaps and spawns a local
Claude session to update stale reference files. Designed for crontab,
zero cloud dependencies.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:47:05 +02:00
Kjell Tore Guttormsen
1395c0bb74 chore(ms-ai-architect): bump version to v1.8.0
Sitemap-based KB change detection system: weekly polling of Microsoft
Learn sitemaps, prioritized change reports, new page discovery.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:26:18 +02:00
Kjell Tore Guttormsen
b52a62318d docs(ms-ai-architect): clarify KB is actively maintained with auto-updates via marketplace
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:24:01 +02:00
Kjell Tore Guttormsen
3ddf9f9016 docs: add KB monitoring to ms-ai-architect description in root README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:21:49 +02:00
Kjell Tore Guttormsen
f968f37be3 feat(ms-ai-architect): sitemap-based KB change detection system
Adds a zero-dependency Node.js pipeline that polls Microsoft Learn sitemaps
weekly to detect when source documentation changes. Replaces the broken
mtime-based staleness check (all files had identical mtime after release).

Components:
- build-registry.mjs: extracts 1342 URLs from 387 reference files
- poll-sitemaps.mjs: streams ~18 child sitemaps, matches against registry
- report-changes.mjs: prioritized change report (critical/high/medium/low)
- discover-new-urls.mjs: finds relevant new MS Learn pages not yet covered
- run-weekly-update.mjs: orchestrator with --force/--discover/--dry-run

Integration:
- session-start hook reads change-report.json instead of broken mtime check
- hook triggers background poll if >7 days since last check
- generate-skills --update reads change report for targeted MCP updates

Current stats: 69% match rate (924/1342 URLs tracked via sitemaps).
~31% unmatched due to Microsoft URL restructuring (ai-foundry/openai paths).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 21:19:51 +02:00
Kjell Tore Guttormsen
035255fc5d docs: move Installation and Compatibility above Plugins section
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 21:18:31 +02:00
Kjell Tore Guttormsen
b34e230523 docs(okr): remove Roadmap section from README — link was 404
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 20:45:18 +02:00
Kjell Tore Guttormsen
a8323f99d5 docs(okr): rewrite README for non-technical audience, reframe around strategy-to-OKR
Shift focus from tildelingsbrev-specific to general strategy transformation.
More motivating, explains what and why for leaders/advisors, not developers.
Updated marketplace root README section to match.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 20:39:35 +02:00
Kjell Tore Guttormsen
ac95cd6a30 feat(okr): sync to v1.3.0 from ktg-privat
Syncs all changes from v1.0.0 through v1.3.0:

v1.1 (quick fixes):
- Fix deprecated Viva Goals references
- Add DFO-OKR terminology mapping
- Add tillitsvalgt/fagforening perspective
- Update Objectives recommendation from 3-5 to 2-3

v1.1 (persistent context):
- Deep onboarding interview (full/mvp)
- Persistent .claude/okr/ directory tree
- Context-aware commands
- Cycle archival with retrospective

v1.3 (AI-first differentiators):
- /okr:gap — tildelingsbrev gap analysis with coverage matrix
- /okr:analyse — cross-cycle Mermaid analytics
- SessionStart coaching hook (proactive, phase-aware)
- gapanalytiker + trendanalytiker agents
- inject-okr-context.mjs extended for historikk/

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 20:31:49 +02:00
Kjell Tore Guttormsen
4b5e19e7b7 docs: improve readability of ultraplan-local heading spacing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 20:25:59 +02:00
Kjell Tore Guttormsen
ff06f7f7d1 docs: rename AI Architect to MS AI Architect — Azure AI and Microsoft Foundry
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 19:32:08 +02:00
Kjell Tore Guttormsen
ace3a70963 docs: add Norwegian locale badges to AI Architect and OKR plugins
Makes it immediately visible which plugins are region-specific.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 19:30:01 +02:00
Kjell Tore Guttormsen
bd1272c581 docs: rename ultraplan-local heading to Ultra{research|plan|execute}-local
Reflects all three commands in the marketplace listing title.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 19:17:13 +02:00
Kjell Tore Guttormsen
7a378cfde9 docs(okr): update to v1.1.0 — badges at top, persistent context features, marketplace listing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 19:08:30 +02:00
Kjell Tore Guttormsen
3354c73467 chore: add mandatory docs-on-push convention to CLAUDE.md
Every feature push must update all three doc levels: plugin README,
plugin CLAUDE.md, and root marketplace README. Added as OBLIGATORISK
convention to prevent docs from falling out of sync.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 18:38:28 +02:00
Kjell Tore Guttormsen
8e2b868826 docs(ultraplan-local): document security hardening in README and CLAUDE.md
Add Security hardening section to ultraplan-local README covering all 4
defense layers. Update architecture tree to include hooks directory.
Update root marketplace README with security summary and hook count.
Update CLAUDE.md architecture section with Phase 2.4 and --allowedTools.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 18:35:34 +02:00
Kjell Tore Guttormsen
aa21e59ac2 feat(ultraplan-local): defense-in-depth security hardening for executor
Four-layer security model for ultraexecute-local and headless sessions:

Layer 1 — Plugin hooks: pre-bash-executor.mjs (13 BLOCK + 8 WARN rules
with bash evasion normalization) and pre-write-executor.mjs (8 path guard
rules blocking .git/hooks, .claude/settings, shell configs, .env, SSH/AWS).

Layer 2 — Prompt-level security rules: denylist in ultraexecute-local.md
Sub-step D and session-spec-template.md Security Constraints section.
These are the only rules that work in headless child sessions.

Layer 3 — Pre-execution plan validation: new Phase 2.4 scans all Verify
and Checkpoint commands against denylist before execution begins.

Layer 4 — Replace --dangerously-skip-permissions with scoped
--allowedTools "Read,Write,Edit,Bash,Glob,Grep" --permission-mode
bypassPermissions in ultraexecute-local.md, headless-launch-template.md,
and session-decomposer.md. Blocks Agent, MCP, WebSearch in child sessions.

Also adds Hard Rules 14-16: verify command security check, no writing
outside repository root, no writing to security-sensitive paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 18:33:15 +02:00
Kjell Tore Guttormsen
2e125d9030 docs(okr): reframe from tildelingsbrev to strategy realization
- Lead with strategy → OKR, not tildelingsbrev → OKR
- Tildelingsbrev repositioned as early analysis tool for leaders
- Broaden tracking: mention Azure Boards and Jira alongside Linear
- Fix limitation: Linear is built-in, others work via MCP

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 15:38:19 +02:00
Kjell Tore Guttormsen
cfd3c7cd1c docs(okr): rewrite README v2 — onboarding-first, show real value
Major restructure based on user feedback:
- Lead with onboarding as the key differentiator
- Add "Bring What You Have" section with two real examples:
  tildelingsbrev parsing and existing OKR quality review
- Show iterative development process, not one-shot usage
- Stronger value proposition: OKR expert that learns your context
- Remove simplistic Q&A example that made plugin look like a form-filler

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 15:29:48 +02:00
Kjell Tore Guttormsen
b8e362fe57 docs(okr): rewrite README for engagement — problem-first landing page
Replace dry documentation-style README with problem-first structure:
lead with public sector pain points, show realistic interaction example,
add "when not to use" section, move badges to bottom.

132 lines (down from 280). Hook within 10 seconds.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 15:22:45 +02:00
Kjell Tore Guttormsen
92d0da3468 docs(okr): remove Roadmap section, gitignore ROADMAP.md
No plugins should promise future features. ROADMAP.md and BACKLOG.md
are internal planning documents, not public-facing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 15:12:15 +02:00