merge: sync main with master — v2.10.1#1311
Merged
Conversation
Thin wrapper package that depends on @red-codes/agentguard. Allows `npx agentguard` to work without the scoped name. Both `npx agentguard` and `npx @red-codes/agentguard` work identically. Closes #848 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace mutable tag references with immutable SHA-pinned digests across all 6 workflow files to prevent supply chain attacks via compromised upstream actions. Original tags preserved as inline comments. Actions pinned: - actions/checkout@v6 - actions/setup-node@v6 - pnpm/action-setup@v5 - actions/upload-artifact@v7 - github/codeql-action/init@v4 - github/codeql-action/analyze@v4 - actions/upload-pages-artifact@v4 - actions/deploy-pages@v4 - dtolnay/rust-toolchain@stable - Swatinem/rust-cache@v2 Closes #829 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Version bump: 2.5.0 → 2.6.0 Supply chain hardening: all 10 GitHub Actions pinned to verified SHA digests across 6 workflow files. Closes #829. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The agentguard-unscoped package depends on @red-codes/agentguard which doesn't exist in the lockfile (it's the published package). Moving to npm-wrapper/ excludes it from the pnpm workspace glob. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v2.6.0 — Go kernel, SHA pinning, unscoped npm, performance docs
Publishes both @red-codes/agentguard and the unscoped agentguard wrapper package on GitHub release. Tolerates "already published" for the wrapper since its version tracks the CLI. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v2.7.0 — automated unscoped npm publish + CI fix
npm rejects "agentguard" as too similar to existing "agent-guard" package. Canonical install path is `npx @red-codes/agentguard`. Removes npm-wrapper/ and the publish step. Closes #848 as won't-fix. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fix(ci): remove blocked unscoped npm wrapper
npx aiguard → delegates to @red-codes/agentguard. Added to publish workflow for automated releases. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
npx aguard → delegates to @red-codes/agentguard. Replaces aiguard attempt. Added to publish workflow. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat(npm): add aiguard convenience package
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v2.7.1 — aguard npm package
Replaces npx agentguard → npx aguard in docs, README, site, CLI help, templates, CLAUDE.md, ROADMAP.md, and source code user-facing strings. Keeps @red-codes/agentguard as the scoped package name in imports and package.json. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
# Conflicts: # npm-wrapper/agentguard/README.md
…HQ/agentguard into feat/squad-swarm-spec
58 files updated: npx agentguard → npx aguard across docs, README, site, CLI help, templates, and user-facing strings. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v2.7.2 — aguard docs + CLI references
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fix(cli): add missing subpath exports for bin and postinstall
- Health: green — all loop guards pass, no escalations - PR #969 (fix claude-init binary path, closes #964 priority:critical): CI 5/5 green, flagged for architect review - Closed stale EM report PR #966 (superseded) - Sprint: #955 (Go kernel hook delegation) + #957 (Go pack resolution) in-progress, senior assigned - PR budget: 1 open / 3 max - Tests: 4129/4129 passing https://claude.ai/code/session_016dXuQwappMAvdGYJaix7C9
…0000 Auto-merged: low-risk chore/docs PR, CI green.
Establishes Tier C governance rules, coding standards, branch naming, PR rules, and autonomy directives for the GitHub Copilot coding agent. Modeled after agentguard-cloud instructions, tailored for the OSS TypeScript/pnpm monorepo stack. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ions Add .github/copilot-instructions.md
Adds governance hooks for OpenAI Codex CLI and Google Gemini CLI, bringing total supported CLI agents to 4. New commands: agentguard codex-hook, codex-init, gemini-hook, gemini-init New adapters: codex-cli.ts, gemini-cli.ts Version: 2.7.2 → 2.8.0 Tests: 759+ passing, coverage above thresholds Closes part of multi-model orchestration initiative.
* feat: init Codex, Copilot, and Gemini hook configs Adds governance hook configurations for all 3 new CLI drivers introduced in v2.8.0. Claude hooks already existed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * feat: agent identity in local telemetry + init all driver hooks - Migration v5: add agent_id column + index to sessions table - All 4 hooks (claude, codex, copilot, gemini) now pass resolved agent identity into session tracking via SessionStartData.agentId - Resolve agent identity once before cloud telemetry (DRY) - Re-init hook configs via agentguard *-init CLI commands - Update migration tests for new schema version Closes #1029 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Jared <jared@agentguard.dev> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore: bump version to 2.8.1 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: add ecosystem section + update framework list in README Adds ecosystem table (ShellForge, RTK, TurboQuant, DefenseClaw, OpenShell, DeepAgents, OpenCode) and updates "Works with" to list all 6 frameworks. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Jared <jared@agentguard.dev> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The governance hook blocked ALL tool calls when the AgentGuard kernel binary was not yet available, creating a catch-22: agents could not run `pnpm install` to build the kernel because the hook blocked it first. This had been blocking the marketing squad for 5 EM cycles. Fix: detect bootstrap mode at two layers: - Shell wrapper: read stdin payload and allow install/build commands and read-only tools through when the binary is missing - TypeScript hook: catch module-not-found errors from unbuilt kernel packages and allow bootstrap-safe actions through Non-bootstrap actions remain fail-closed (blocked) for security. Closes #995 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Extract bootstrap.ts as single source of truth for allowlists (fixes broken import from 5b7bb9f that referenced missing module) - Add containsChainingOperators() — blocks "pnpm install && curl evil" - Cross-driver payload normalization (tool_name vs toolName, tool_input vs toolArgs) - Shell wrapper chaining protection via grep after case match - 65 tests: Claude/Copilot/Codex/Gemini payloads, chaining bypass, read-only tools Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fix: bootstrap exemption for governance hooks
Go kernel now handles all Claude Code hook events with full feature parity: - PreToolUse: policy eval, invariant checking, enforcement mode routing (enforce/guide/educate/monitor), read-only tool fail-open, session state, identity wizard, retry tracking, cloud telemetry, lesson capture - PostToolUse: bash error reporting, format/test pass tracking, PR detection - Stop: session viewer generation, root session cleanup - Notification: live session viewer spawn New files: env.go, session.go, identity.go, lesson.go, telemetry.go Key fix: FromStdin() fallback — Claude Code sends payloads via stdin, not env vars. This was the root cause of Go fast-path never executing. Performance: 2ms Go vs 290ms TS — 145x faster hook evaluation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat(go): complete Go kernel — full TS hook parity, 145x faster
matchesAction() was missing "*" wildcard and "git.*" namespace matching. Without this, policies with `action: "*"` (default-allow) never matched, causing all actions to hit default-deny in the Go kernel. Also bumps version to 2.10.0 for the Go kernel release. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fix(go): wildcard policy matching + bump to 2.10.0
… stdin, CI ships Go binaries
fix(dx): cold-start install works without claude-init
chore: bump to 2.10.1
Collaborator
Author
[workspace-pr-review-agent] Workspace Config ReviewVerdict: CHANGES REQUESTED Summary: Large merge sync (v2.10.1) bringing in cold-start DX improvements, new Codex/Gemini CLI adapters, and deletion of the DeepAgents adapter. The bootstrap exemption added to Findings
Swarm Impact Assessment
Config Consistency Check
Automated review by workspace-pr-review-agent (claude-code:opus:reviewer) — AgentGuard workspace swarm |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves main/master divergence. Go kernel, cold-start DX, wildcard fix.