Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
f3f7342
feat(channels): add NodeSocketDuplexStream and session channel primit…
grypez May 13, 2026
cd31f1d
chore(changelog): add changelog entries for channels PR
grypez May 18, 2026
585343e
feat(session-types): add shared SessionSummary, PendingRequest, Sessi…
grypez May 14, 2026
3655eb1
feat(sessions): add session registry, channel factory, and stream soc…
grypez May 13, 2026
50aca19
feat(sessions): add history tracking and session.authorize
grypez May 18, 2026
e474a05
chore(changelog): add changelog entries for sessions PR
grypez May 18, 2026
ce42b4e
feat(session-cli): add session subcommands to kernel-cli
grypez May 13, 2026
f174529
feat(kernel-tui): add TUI with sessions view
grypez May 13, 2026
2bcee9e
feat(kernel-tui): add session detail view, history, and keybinds
grypez May 18, 2026
d766a63
feat(caprock): add sheaf-based permission-tracker vat and hook
grypez May 20, 2026
e190952
feat(session): add provision editor, visibility, and auto-provisioned…
grypez May 23, 2026
c1fb390
feat(caprock): clause-level provision routing for independent bash op…
grypez May 28, 2026
fc61fcc
fix(kernel-tui): omit optional clauses prop to satisfy exactOptionalP…
grypez May 28, 2026
12db131
fix(caprock): include redirected_statement stages in pipeline clause …
grypez Jun 1, 2026
bdefc0d
fix(kernel-utils): recognize bare relative paths in isPathArg
grypez Jun 4, 2026
6f821f3
feat(caprock): capture deny-list snapshot and provision_match events
grypez Jun 4, 2026
269ccb9
feat(caprock): add audit CLI and slash-command skills
grypez Jun 4, 2026
401b7ff
refactor(caprock): table-driven safety fragment for bash AST dispatch
grypez Jun 5, 2026
17c2852
docs(caprock): add package code-organization reference
grypez Jun 8, 2026
810d9a8
chore(caprock): validate daemon RPC boundary with superstruct
grypez Jun 11, 2026
11095b5
refactor(caprock): extract shared buildClauses + routeAllClauses
grypez Jun 11, 2026
2be9fd2
refactor(caprock): split hook handlers into src/handlers/ with inject…
grypez Jun 11, 2026
c6c54b6
fix(caprock): accept extra fields on daemon RPC responses
grypez Jun 11, 2026
9ad2dc2
fix(kernel-tui): sort sessions list newest-first
grypez Jun 11, 2026
3eddc41
fix(caprock): lift && operands out of a redirected pipeline stage
grypez Jun 11, 2026
d846501
feat(caprock,kernel-tui): revoke standing provisions from the TUI
grypez Jun 15, 2026
411c9d1
feat(caprock): record hook and vat versions in session log
grypez Jun 15, 2026
9e065c2
refactor(caprock): convert vat RPC helpers to options bags
grypez Jun 15, 2026
6d42089
fix(caprock): deny when persisted state has no kernel session
grypez Jun 15, 2026
d32300a
chore(kernel-utils,kernel-node-runtime): validate session.* RPC param…
grypez Jun 15, 2026
aac8d58
refactor(kernel-tui): split session-detail-view into focused files
grypez Jun 15, 2026
2681e5e
feat(kernel-tui): group sessions into recent/oldish/archived buckets
grypez Jun 15, 2026
0c0bc73
test(caprock): assert KernelSessionStruct accepts the session.create …
grypez Jul 1, 2026
8fc6352
fix(caprock): accept lastActiveAt in KernelSessionStruct
grypez Jul 1, 2026
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
8 changes: 8 additions & 0 deletions packages/caprock/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "caprock",
"version": "0.1.0",
"description": "Routes Claude Code tool invocations through an ocap-kernel permission vat (POLA enforcement).",
"repository": "https://github.com/MetaMask/ocap-kernel",
"license": "MIT"
}
15 changes: 15 additions & 0 deletions packages/caprock/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added

- Permission-tracker vat now supports `removeSection(provision)` so the TUI can revoke a previously-granted standing provision. Revocations are written to the caprock event log as `provision_revoke` events alongside the existing `provision_match` records consumed by `caprock:audit`.
- Session state now records the hook binary's version (from `.claude-plugin/plugin.json`) and the permission-tracker vat's baked-in version, so a reader can tell which version(s) of the plugin produced a given session log. A `version_up` event is appended whenever the hook binary is upgraded mid-session; a downgrade aborts the hook with a "monotonic versioning violated" error.

[Unreleased]: https://github.com/MetaMask/ocap-kernel/
15 changes: 15 additions & 0 deletions packages/caprock/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# `@ocap/caprock`

Claude Code plugin: routes tool invocations through an ocap-kernel permission vat (POLA enforcement)

## Installation

`yarn add @ocap/caprock`

or

`npm install @ocap/caprock`

## Contributing

This package is part of a monorepo. Instructions for contributing can be found in the [monorepo README](https://github.com/MetaMask/ocap-kernel#readme).
Loading
Loading