Repository navigation
Conversation
3bf5534 to
066276e
Compare
|
don't merge yet - adding the ability to update the config based on the recommendations |
|
I was trying to get the best display/view for these as there's a lot of information we could show. The per-session items are marked with "Session", there's "Default", and "Configured" where the user explicitly configured something (e.g. wildcard domains or specific domain for example). Honestly, I am not sure whether the view with 100+ items that say "shell commands" is actually useful or not (we could combine them into a single item and say "shell commands" (10+ instances) or something like that. |
Signed-off-by: Peter Jausovec <peter.jausovec@solo.io>
Signed-off-by: Peter Jausovec <peter.jausovec@solo.io>
Signed-off-by: Peter Jausovec <peter.jausovec@solo.io>
278f47c to
ecd5cf8
Compare
Signed-off-by: Peter Jausovec <peter.jausovec@solo.io>
|
@copilot resolve the merge conflicts in this pull request |
# Conflicts: # crates/agent/src/discovery/mod.rs Co-authored-by: peterj <11080940+peterj@users.noreply.github.com>
Co-authored-by: peterj <11080940+peterj@users.noreply.github.com>
Resolved by merging |
There was a problem hiding this comment.
🟡 Changes recommended
Cross-user data exposure, a mutation deadlock, audit false negatives, and configuration writes outside the stated read-only scope remain unresolved.
8 open issues
Flag explicitly allowed shell execution as uncontained · New Preserve catch-all shell policy as unrestricted execution · New Enforce caller-scoped access during assessment · New Avoid reentrant lock acquisition during access reporting · New Do not treat project-scoped sandboxing as global · New Consume pending configuration paths without skipping entries · New Remove standalone-installation configuration editing · New Prevent decision changes during application · New
What changed in this PR
Adds per-agent access audits to the desktop tool inventory, combining configuration, defaults, and session evidence with coverage and risk reporting.
Changes:
- Introduces shared audit models, agent-specific collectors, and CLI/API access.
- Integrates audit summaries and per-agent access panels into the desktop.
- Adds standalone network-rule editing, configuration-source opening, and development tooling.
| File | Description |
|---|---|
| Makefile | Adds a desktop development launcher. |
| frontend/ui/src/tools.tsx | Supports an optional leading inventory tab. |
| frontend/ui/src/styles.css | Adjusts inventory layout and nested summaries. |
| frontend/desktop/src/views/ToolsView.tsx | Integrates audit summaries into tool inventory. |
| frontend/desktop/src/views/PolicyView.tsx | Adds staged network-rule editing. |
| frontend/desktop/src/useDesktopModel.ts | Loads audits and coordinates access actions. |
| frontend/desktop/src/types.ts | Defines audit and rule-change types. |
| frontend/desktop/src/stories/fixtures.ts | Adds representative audit fixtures. |
| frontend/desktop/src/Desktop.tsx | Connects audit state and editing controls. |
| frontend/desktop/src/components/DesktopShell.tsx | Adds navigation tooltips. |
| frontend/desktop/src/components/DesktopShell.stories.tsx | Checks that Access has no separate navigation entry. |
| frontend/desktop/src/components/AgentToolInventory.tsx | Embeds agent access panels in inventory. |
| frontend/desktop/src/backend.ts | Adds typed native access commands. |
| frontend/desktop/.storybook/preview.ts | Widens the native-window preview. |
| crates/core/src/model.rs | Defines shared audit data structures. |
| crates/agentdesktop/tauri.conf.json | Widens the desktop window. |
| crates/agentdesktop/src/network_policy/vscode.rs | Implements VS Code rule mutations. |
| crates/agentdesktop/src/network_policy/claude.rs | Implements Claude rule mutations. |
| crates/agentdesktop/src/network_policy.rs | Validates and dispatches network-rule changes. |
| crates/agentdesktop/src/main.rs | Adds native audit commands and socket selection changes. |
| crates/agentdesktop/Cargo.toml | Adds the JSONC parser dependency. |
| crates/agent/src/provider/mod.rs | Exposes metadata within the crate. |
| crates/agent/src/provider/metadata.rs | Adds user-ID-based home resolution. |
| crates/agent/src/lib.rs | Registers access and discovery modules. |
| crates/agent/src/discovery/mod.rs | Provides reusable discovery entry points. |
| crates/agent/src/daemon.rs | Attaches the local caller’s home to requests. |
| crates/agent/src/cli.rs | Adds the access-audit command. |
| crates/agent/src/api.rs | Exposes the local audit endpoint. |
| crates/agent/src/access/vscode.rs | Collects VS Code configuration and runtime evidence. |
| crates/agent/src/access/opencode.rs | Collects OpenCode permissions and defaults. |
| crates/agent/src/access/mod.rs | Assembles reports and derives risk findings. |
| crates/agent/src/access/history_scan.rs | Adds bounded session-history scanning. |
| crates/agent/src/access/configuration.rs | Dispatches configuration adapters. |
| crates/agent/src/access/codex.rs | Collects Codex configuration and runtime evidence. |
| crates/agent/src/access/claude_desktop.rs | Collects Claude Desktop access evidence. |
| crates/agent/src/access/claude_code.rs | Collects Claude permissions and sandbox settings. |
| Cargo.lock | Records the desktop parser dependency. |
Review effort: Balanced




add access assessments for supported agents and show configuration, defaults as well as the items derived from the individual sessions (e.g. "used tool X", "gave access to Y")
Note that all this is read-only - there's no way to generate any configuration or access rules out of this yet.