@provos/ironcurtain 0.6.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -86
- package/dist/cli-help.d.ts +63 -0
- package/dist/cli-help.js +102 -0
- package/dist/cli-help.js.map +1 -0
- package/dist/cli.js +79 -56
- package/dist/cli.js.map +1 -1
- package/dist/config/config-command.js +136 -2
- package/dist/config/config-command.js.map +1 -1
- package/dist/config/constitution-readonly.md +21 -0
- package/dist/config/generated/tool-annotations.json +487 -338
- package/dist/config/generated-readonly/compiled-policy.json +468 -0
- package/dist/config/index.d.ts +21 -1
- package/dist/config/index.js +12 -4
- package/dist/config/index.js.map +1 -1
- package/dist/config/mcp-servers.json +2 -8
- package/dist/config/paths.d.ts +47 -0
- package/dist/config/paths.js +81 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/config/tool-description-hints.json +15 -0
- package/dist/config/types.d.ts +7 -0
- package/dist/config/user-config.d.ts +21 -0
- package/dist/config/user-config.js +8 -0
- package/dist/config/user-config.js.map +1 -1
- package/dist/cron/compile-task-policy.d.ts +17 -0
- package/dist/cron/compile-task-policy.js +39 -0
- package/dist/cron/compile-task-policy.js.map +1 -0
- package/dist/cron/constitution-generator.d.ts +60 -0
- package/dist/cron/constitution-generator.js +217 -0
- package/dist/cron/constitution-generator.js.map +1 -0
- package/dist/cron/cron-scheduler.d.ts +65 -0
- package/dist/cron/cron-scheduler.js +184 -0
- package/dist/cron/cron-scheduler.js.map +1 -0
- package/dist/cron/file-lock.d.ts +41 -0
- package/dist/cron/file-lock.js +156 -0
- package/dist/cron/file-lock.js.map +1 -0
- package/dist/cron/format-utils.d.ts +18 -0
- package/dist/cron/format-utils.js +145 -0
- package/dist/cron/format-utils.js.map +1 -0
- package/dist/cron/git-sync.d.ts +22 -0
- package/dist/cron/git-sync.js +121 -0
- package/dist/cron/git-sync.js.map +1 -0
- package/dist/cron/headless-transport.d.ts +27 -0
- package/dist/cron/headless-transport.js +43 -0
- package/dist/cron/headless-transport.js.map +1 -0
- package/dist/cron/job-commands.d.ts +39 -0
- package/dist/cron/job-commands.js +585 -0
- package/dist/cron/job-commands.js.map +1 -0
- package/dist/cron/job-customizer.d.ts +22 -0
- package/dist/cron/job-customizer.js +47 -0
- package/dist/cron/job-customizer.js.map +1 -0
- package/dist/cron/job-store.d.ts +35 -0
- package/dist/cron/job-store.js +111 -0
- package/dist/cron/job-store.js.map +1 -0
- package/dist/cron/types.d.ts +135 -0
- package/dist/cron/types.js +22 -0
- package/dist/cron/types.js.map +1 -0
- package/dist/daemon/control-socket.d.ts +127 -0
- package/dist/daemon/control-socket.js +261 -0
- package/dist/daemon/control-socket.js.map +1 -0
- package/dist/daemon/daemon-command.d.ts +13 -0
- package/dist/daemon/daemon-command.js +230 -0
- package/dist/daemon/daemon-command.js.map +1 -0
- package/dist/daemon/ironcurtain-daemon.d.ts +90 -0
- package/dist/daemon/ironcurtain-daemon.js +550 -0
- package/dist/daemon/ironcurtain-daemon.js.map +1 -0
- package/dist/docker/adapters/claude-code.js +7 -47
- package/dist/docker/adapters/claude-code.js.map +1 -1
- package/dist/docker/adapters/goose.d.ts +58 -0
- package/dist/docker/adapters/goose.js +250 -0
- package/dist/docker/adapters/goose.js.map +1 -0
- package/dist/docker/adapters/shared-scripts.d.ts +29 -0
- package/dist/docker/adapters/shared-scripts.js +80 -0
- package/dist/docker/adapters/shared-scripts.js.map +1 -0
- package/dist/docker/agent-adapter.d.ts +12 -0
- package/dist/docker/agent-adapter.js.map +1 -1
- package/dist/docker/agent-registry.d.ts +6 -1
- package/dist/docker/agent-registry.js +10 -1
- package/dist/docker/agent-registry.js.map +1 -1
- package/dist/docker/docker-agent-session.d.ts +2 -25
- package/dist/docker/docker-agent-session.js +7 -106
- package/dist/docker/docker-agent-session.js.map +1 -1
- package/dist/docker/docker-infrastructure.d.ts +8 -0
- package/dist/docker/docker-infrastructure.js +12 -11
- package/dist/docker/docker-infrastructure.js.map +1 -1
- package/dist/docker/mitm-proxy.js +10 -5
- package/dist/docker/mitm-proxy.js.map +1 -1
- package/dist/docker/oauth-credentials.js +2 -2
- package/dist/docker/oauth-credentials.js.map +1 -1
- package/dist/docker/pty-session.js +146 -39
- package/dist/docker/pty-session.js.map +1 -1
- package/dist/escalation/escalation-watcher.d.ts +2 -0
- package/dist/escalation/escalation-watcher.js +3 -0
- package/dist/escalation/escalation-watcher.js.map +1 -1
- package/dist/escalation/session-registry.js +1 -14
- package/dist/escalation/session-registry.js.map +1 -1
- package/dist/index.js +43 -5
- package/dist/index.js.map +1 -1
- package/dist/mux/mux-app.js +11 -6
- package/dist/mux/mux-app.js.map +1 -1
- package/dist/mux/mux-command.js +49 -10
- package/dist/mux/mux-command.js.map +1 -1
- package/dist/mux/mux-input-handler.d.ts +5 -0
- package/dist/mux/mux-input-handler.js +64 -9
- package/dist/mux/mux-input-handler.js.map +1 -1
- package/dist/mux/mux-renderer.d.ts +20 -0
- package/dist/mux/mux-renderer.js +127 -35
- package/dist/mux/mux-renderer.js.map +1 -1
- package/dist/mux/mux-splash.js +2 -1
- package/dist/mux/mux-splash.js.map +1 -1
- package/dist/mux/paste-interceptor.d.ts +22 -0
- package/dist/mux/paste-interceptor.js +143 -0
- package/dist/mux/paste-interceptor.js.map +1 -0
- package/dist/mux/pty-bridge.js +1 -1
- package/dist/mux/pty-bridge.js.map +1 -1
- package/dist/mux/types.d.ts +8 -1
- package/dist/mux/types.js +17 -5
- package/dist/mux/types.js.map +1 -1
- package/dist/persona/compile-persona-policy.d.ts +21 -0
- package/dist/persona/compile-persona-policy.js +50 -0
- package/dist/persona/compile-persona-policy.js.map +1 -0
- package/dist/persona/persona-command.d.ts +9 -0
- package/dist/persona/persona-command.js +479 -0
- package/dist/persona/persona-command.js.map +1 -0
- package/dist/persona/persona-customizer.d.ts +23 -0
- package/dist/persona/persona-customizer.js +52 -0
- package/dist/persona/persona-customizer.js.map +1 -0
- package/dist/persona/persona-prompt.d.ts +19 -0
- package/dist/persona/persona-prompt.js +42 -0
- package/dist/persona/persona-prompt.js.map +1 -0
- package/dist/persona/resolve.d.ts +46 -0
- package/dist/persona/resolve.js +108 -0
- package/dist/persona/resolve.js.map +1 -0
- package/dist/persona/types.d.ts +40 -0
- package/dist/persona/types.js +20 -0
- package/dist/persona/types.js.map +1 -0
- package/dist/pipeline/annotate.js +10 -4
- package/dist/pipeline/annotate.js.map +1 -1
- package/dist/pipeline/compile.d.ts +14 -31
- package/dist/pipeline/compile.js +50 -563
- package/dist/pipeline/compile.js.map +1 -1
- package/dist/pipeline/constitution-compiler.d.ts +6 -0
- package/dist/pipeline/constitution-compiler.js +42 -6
- package/dist/pipeline/constitution-compiler.js.map +1 -1
- package/dist/pipeline/constitution-customizer.d.ts +3 -0
- package/dist/pipeline/constitution-customizer.js +19 -5
- package/dist/pipeline/constitution-customizer.js.map +1 -1
- package/dist/pipeline/customizer-loop.d.ts +34 -0
- package/dist/pipeline/customizer-loop.js +167 -0
- package/dist/pipeline/customizer-loop.js.map +1 -0
- package/dist/pipeline/mcp-connections.d.ts +16 -0
- package/dist/pipeline/mcp-connections.js +61 -0
- package/dist/pipeline/mcp-connections.js.map +1 -0
- package/dist/pipeline/pipeline-runner.d.ts +86 -0
- package/dist/pipeline/pipeline-runner.js +547 -0
- package/dist/pipeline/pipeline-runner.js.map +1 -0
- package/dist/pipeline/pipeline-shared.d.ts +37 -3
- package/dist/pipeline/pipeline-shared.js +77 -16
- package/dist/pipeline/pipeline-shared.js.map +1 -1
- package/dist/pipeline/refresh-lists.js +38 -12
- package/dist/pipeline/refresh-lists.js.map +1 -1
- package/dist/pipeline/scenario-generator.js +2 -1
- package/dist/pipeline/scenario-generator.js.map +1 -1
- package/dist/pipeline/tool-annotator.d.ts +3 -3
- package/dist/pipeline/tool-annotator.js +114 -4
- package/dist/pipeline/tool-annotator.js.map +1 -1
- package/dist/pipeline/types.d.ts +52 -0
- package/dist/sandbox/index.js +36 -1
- package/dist/sandbox/index.js.map +1 -1
- package/dist/session/agent-session.d.ts +3 -0
- package/dist/session/agent-session.js +10 -1
- package/dist/session/agent-session.js.map +1 -1
- package/dist/session/index.d.ts +10 -0
- package/dist/session/index.js +134 -12
- package/dist/session/index.js.map +1 -1
- package/dist/session/preflight.js +26 -6
- package/dist/session/preflight.js.map +1 -1
- package/dist/session/prompts.d.ts +14 -0
- package/dist/session/prompts.js +39 -2
- package/dist/session/prompts.js.map +1 -1
- package/dist/session/session-manager.d.ts +105 -0
- package/dist/session/session-manager.js +134 -0
- package/dist/session/session-manager.js.map +1 -0
- package/dist/session/session-metadata.d.ts +18 -0
- package/dist/session/session-metadata.js +34 -0
- package/dist/session/session-metadata.js.map +1 -0
- package/dist/session/types.d.ts +47 -0
- package/dist/session/workspace-validation.d.ts +2 -0
- package/dist/session/workspace-validation.js +6 -5
- package/dist/session/workspace-validation.js.map +1 -1
- package/dist/signal/bot-command.d.ts +2 -0
- package/dist/signal/bot-command.js +8 -0
- package/dist/signal/bot-command.js.map +1 -1
- package/dist/signal/format.d.ts +27 -0
- package/dist/signal/format.js +59 -0
- package/dist/signal/format.js.map +1 -1
- package/dist/signal/signal-bot-daemon.d.ts +27 -25
- package/dist/signal/signal-bot-daemon.js +153 -135
- package/dist/signal/signal-bot-daemon.js.map +1 -1
- package/dist/signal/signal-container.js +63 -19
- package/dist/signal/signal-container.js.map +1 -1
- package/dist/signal/signal-transport.js +3 -8
- package/dist/signal/signal-transport.js.map +1 -1
- package/dist/trusted-process/domain-utils.d.ts +37 -4
- package/dist/trusted-process/domain-utils.js +130 -11
- package/dist/trusted-process/domain-utils.js.map +1 -1
- package/dist/trusted-process/index.js +6 -2
- package/dist/trusted-process/index.js.map +1 -1
- package/dist/trusted-process/mcp-client-manager.js +11 -5
- package/dist/trusted-process/mcp-client-manager.js.map +1 -1
- package/dist/trusted-process/mcp-proxy-server.d.ts +21 -0
- package/dist/trusted-process/mcp-proxy-server.js +91 -28
- package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
- package/dist/trusted-process/permissive-output-validator.d.ts +23 -0
- package/dist/trusted-process/permissive-output-validator.js +10 -0
- package/dist/trusted-process/permissive-output-validator.js.map +1 -0
- package/dist/trusted-process/policy-engine.d.ts +29 -7
- package/dist/trusted-process/policy-engine.js +149 -92
- package/dist/trusted-process/policy-engine.js.map +1 -1
- package/dist/trusted-process/tool-description-hints.d.ts +19 -0
- package/dist/trusted-process/tool-description-hints.js +53 -0
- package/dist/trusted-process/tool-description-hints.js.map +1 -0
- package/dist/types/argument-roles.d.ts +33 -1
- package/dist/types/argument-roles.js +129 -1
- package/dist/types/argument-roles.js.map +1 -1
- package/dist/types/slug.d.ts +7 -0
- package/dist/types/slug.js +14 -0
- package/dist/types/slug.js.map +1 -0
- package/dist/utils/editor.d.ts +24 -0
- package/dist/utils/editor.js +66 -0
- package/dist/utils/editor.js.map +1 -0
- package/docker/Dockerfile.goose +34 -0
- package/docker/entrypoint-goose.sh +30 -0
- package/package.json +1 -1
- package/src/config/generated/tool-annotations.json +487 -338
- package/src/config/mcp-servers.json +2 -8
|
@@ -0,0 +1,468 @@
|
|
|
1
|
+
{
|
|
2
|
+
"generatedAt": "2026-03-06T22:53:18.790Z",
|
|
3
|
+
"constitutionHash": "750295d07a6b1a5dba6ab44d3fa62b2b5a3426340ada35f2cf300b04c418b49b",
|
|
4
|
+
"inputHash": "0536def5e41fbc6f740995d8e9e211b58b4cc40ea7157d053f42ab7931b6fadc-repair",
|
|
5
|
+
"rules": [
|
|
6
|
+
{
|
|
7
|
+
"name": "allow-filesystem-reads",
|
|
8
|
+
"description": "Allow reading files, listing directories, and querying metadata anywhere on the filesystem.",
|
|
9
|
+
"principle": "Broad read access: Reading files, listing directories, and querying metadata is permitted anywhere.",
|
|
10
|
+
"if": {
|
|
11
|
+
"tool": [
|
|
12
|
+
"read_file",
|
|
13
|
+
"read_text_file",
|
|
14
|
+
"read_media_file",
|
|
15
|
+
"read_multiple_files",
|
|
16
|
+
"list_directory",
|
|
17
|
+
"list_directory_with_sizes",
|
|
18
|
+
"directory_tree",
|
|
19
|
+
"search_files",
|
|
20
|
+
"get_file_info"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
"then": "allow",
|
|
24
|
+
"reason": "Constitution explicitly permits reading files and listing directories anywhere on the filesystem."
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "allow-list-allowed-directories",
|
|
28
|
+
"description": "Allow querying which directories the filesystem server can access.",
|
|
29
|
+
"principle": "Broad read access: Reading files, listing directories, and querying metadata is permitted anywhere.",
|
|
30
|
+
"if": {
|
|
31
|
+
"tool": [
|
|
32
|
+
"list_allowed_directories"
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"then": "allow",
|
|
36
|
+
"reason": "Listing allowed directories is a read-only metadata query explicitly permitted."
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "escalate-filesystem-writes",
|
|
40
|
+
"description": "Escalate any file write, edit, or create operation for human approval.",
|
|
41
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
42
|
+
"if": {
|
|
43
|
+
"tool": [
|
|
44
|
+
"write_file",
|
|
45
|
+
"edit_file",
|
|
46
|
+
"create_directory"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"then": "escalate",
|
|
50
|
+
"reason": "Constitution requires human approval before any write or create operation."
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "escalate-filesystem-move",
|
|
54
|
+
"description": "Escalate any file move/rename operation for human approval.",
|
|
55
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
56
|
+
"if": {
|
|
57
|
+
"tool": [
|
|
58
|
+
"move_file"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"then": "escalate",
|
|
62
|
+
"reason": "Move operations modify the filesystem by deleting the source and creating the destination, requiring human approval."
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "allow-git-read-only-tools",
|
|
66
|
+
"description": "Allow reading git log, status, diff, blame, show, reflog, and changelog analysis.",
|
|
67
|
+
"principle": "The agent is allowed to read git log, status, diff, and branch information.",
|
|
68
|
+
"if": {
|
|
69
|
+
"tool": [
|
|
70
|
+
"git_log",
|
|
71
|
+
"git_status",
|
|
72
|
+
"git_diff",
|
|
73
|
+
"git_blame",
|
|
74
|
+
"git_show",
|
|
75
|
+
"git_reflog",
|
|
76
|
+
"git_changelog_analyze"
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
"then": "allow",
|
|
80
|
+
"reason": "Constitution explicitly permits reading git log, status, diff, and branch information."
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"name": "allow-git-set-working-dir",
|
|
84
|
+
"description": "Allow setting or clearing the git working directory for navigation.",
|
|
85
|
+
"principle": "The agent is allowed to set the git working directory for navigation.",
|
|
86
|
+
"if": {
|
|
87
|
+
"tool": [
|
|
88
|
+
"git_set_working_dir",
|
|
89
|
+
"git_clear_working_dir"
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
"then": "allow",
|
|
93
|
+
"reason": "Constitution explicitly permits setting the git working directory for navigation."
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"name": "allow-git-wrapup-instructions",
|
|
97
|
+
"description": "Allow querying git wrap-up workflow instructions (read-only, no side effects).",
|
|
98
|
+
"principle": "Read-only exploration: The agent may only observe and query.",
|
|
99
|
+
"if": {
|
|
100
|
+
"tool": [
|
|
101
|
+
"git_wrapup_instructions"
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
"then": "allow",
|
|
105
|
+
"reason": "git_wrapup_instructions is a read-only query with no side effects."
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"name": "allow-git-branch-read",
|
|
109
|
+
"description": "Allow listing git branches (read-only).",
|
|
110
|
+
"principle": "The agent is allowed to read git log, status, diff, and branch information.",
|
|
111
|
+
"if": {
|
|
112
|
+
"roles": [
|
|
113
|
+
"read-path"
|
|
114
|
+
],
|
|
115
|
+
"tool": [
|
|
116
|
+
"git_branch"
|
|
117
|
+
]
|
|
118
|
+
},
|
|
119
|
+
"then": "allow",
|
|
120
|
+
"reason": "Constitution permits reading branch information; listing only activates read-path role."
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"name": "allow-git-remote-list",
|
|
124
|
+
"description": "Allow listing git remotes (read-only, no remote URL argument present).",
|
|
125
|
+
"principle": "The agent is allowed to read git log, status, diff, and branch information.",
|
|
126
|
+
"if": {
|
|
127
|
+
"roles": [
|
|
128
|
+
"read-path"
|
|
129
|
+
],
|
|
130
|
+
"tool": [
|
|
131
|
+
"git_remote"
|
|
132
|
+
]
|
|
133
|
+
},
|
|
134
|
+
"then": "allow",
|
|
135
|
+
"reason": "Listing remotes only activates read-path; constitution only requires approval for mutations to remote config."
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "escalate-git-remote-mutations",
|
|
139
|
+
"description": "Escalate adding, removing, or renaming git remotes (when a remote URL is provided).",
|
|
140
|
+
"principle": "The agent must ask for approval before adding, removing, or renaming git remotes.",
|
|
141
|
+
"if": {
|
|
142
|
+
"roles": [
|
|
143
|
+
"git-remote-url"
|
|
144
|
+
],
|
|
145
|
+
"tool": [
|
|
146
|
+
"git_remote"
|
|
147
|
+
]
|
|
148
|
+
},
|
|
149
|
+
"then": "escalate",
|
|
150
|
+
"reason": "Constitution requires human approval before modifying git remote configuration."
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"name": "allow-git-fetch-from-github",
|
|
154
|
+
"description": "Allow git fetch from GitHub remotes.",
|
|
155
|
+
"principle": "GitHub read access: Querying GitHub repositories, issues, and pull requests is permitted for reading.",
|
|
156
|
+
"if": {
|
|
157
|
+
"tool": [
|
|
158
|
+
"git_fetch"
|
|
159
|
+
],
|
|
160
|
+
"domains": {
|
|
161
|
+
"roles": [
|
|
162
|
+
"git-remote-url"
|
|
163
|
+
],
|
|
164
|
+
"allowed": [
|
|
165
|
+
"github.com"
|
|
166
|
+
]
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"then": "allow",
|
|
170
|
+
"reason": "Constitution permits GitHub read access; git fetch downloads objects without merging."
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"name": "allow-git-clone-from-github",
|
|
174
|
+
"description": "Allow git clone from GitHub.",
|
|
175
|
+
"principle": "GitHub read access: Querying GitHub repositories, issues, and pull requests is permitted for reading.",
|
|
176
|
+
"if": {
|
|
177
|
+
"tool": [
|
|
178
|
+
"git_clone"
|
|
179
|
+
],
|
|
180
|
+
"domains": {
|
|
181
|
+
"roles": [
|
|
182
|
+
"git-remote-url"
|
|
183
|
+
],
|
|
184
|
+
"allowed": [
|
|
185
|
+
"github.com"
|
|
186
|
+
]
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
"then": "allow",
|
|
190
|
+
"reason": "Constitution permits GitHub read access; cloning from GitHub is a read operation."
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"name": "allow-git-stash-list",
|
|
194
|
+
"description": "Allow listing git stashes (read-only stash inspection with no write-history argument active).",
|
|
195
|
+
"principle": "The agent is allowed to read git log, status, diff, and branch information.",
|
|
196
|
+
"if": {
|
|
197
|
+
"roles": [
|
|
198
|
+
"read-path"
|
|
199
|
+
],
|
|
200
|
+
"tool": [
|
|
201
|
+
"git_stash"
|
|
202
|
+
]
|
|
203
|
+
},
|
|
204
|
+
"then": "allow",
|
|
205
|
+
"reason": "Stash listing is read-only; constitution permits read-only git inspection."
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"name": "escalate-git-stash-mutations",
|
|
209
|
+
"description": "Escalate git stash push/pop/apply/drop operations that modify git state.",
|
|
210
|
+
"principle": "The agent must ask for approval before modifying git state.",
|
|
211
|
+
"if": {
|
|
212
|
+
"roles": [
|
|
213
|
+
"write-history"
|
|
214
|
+
],
|
|
215
|
+
"tool": [
|
|
216
|
+
"git_stash"
|
|
217
|
+
]
|
|
218
|
+
},
|
|
219
|
+
"then": "escalate",
|
|
220
|
+
"reason": "Stash push/pop operations modify git state and require human approval."
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"name": "allow-git-clean-dry-run",
|
|
224
|
+
"description": "Allow git clean in dry-run mode (preview only, read-path role only, no delete-path active).",
|
|
225
|
+
"principle": "Read-only exploration: The agent may only observe and query.",
|
|
226
|
+
"if": {
|
|
227
|
+
"roles": [
|
|
228
|
+
"read-path"
|
|
229
|
+
],
|
|
230
|
+
"tool": [
|
|
231
|
+
"git_clean"
|
|
232
|
+
]
|
|
233
|
+
},
|
|
234
|
+
"then": "allow",
|
|
235
|
+
"reason": "git_clean dry-run only reads the working tree without deleting anything."
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "escalate-git-clean-actual",
|
|
239
|
+
"description": "Escalate git clean when it would actually delete files (delete-path role active).",
|
|
240
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
241
|
+
"if": {
|
|
242
|
+
"roles": [
|
|
243
|
+
"delete-path"
|
|
244
|
+
],
|
|
245
|
+
"tool": [
|
|
246
|
+
"git_clean"
|
|
247
|
+
]
|
|
248
|
+
},
|
|
249
|
+
"then": "escalate",
|
|
250
|
+
"reason": "git_clean deletes untracked files from the working directory and requires human approval."
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"name": "escalate-git-checkout",
|
|
254
|
+
"description": "Escalate git checkout operations that modify git state.",
|
|
255
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
256
|
+
"if": {
|
|
257
|
+
"tool": [
|
|
258
|
+
"git_checkout"
|
|
259
|
+
]
|
|
260
|
+
},
|
|
261
|
+
"then": "escalate",
|
|
262
|
+
"reason": "git_checkout modifies git working tree state and requires human approval."
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"name": "escalate-git-commit",
|
|
266
|
+
"description": "Escalate git commit operations that modify git history.",
|
|
267
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
268
|
+
"if": {
|
|
269
|
+
"tool": [
|
|
270
|
+
"git_commit"
|
|
271
|
+
]
|
|
272
|
+
},
|
|
273
|
+
"then": "escalate",
|
|
274
|
+
"reason": "git_commit modifies git history and requires human approval."
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"name": "escalate-git-merge",
|
|
278
|
+
"description": "Escalate git merge operations that modify git history.",
|
|
279
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
280
|
+
"if": {
|
|
281
|
+
"tool": [
|
|
282
|
+
"git_merge"
|
|
283
|
+
]
|
|
284
|
+
},
|
|
285
|
+
"then": "escalate",
|
|
286
|
+
"reason": "git_merge modifies git history and requires human approval."
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"name": "escalate-git-rebase",
|
|
290
|
+
"description": "Escalate git rebase operations that modify git history.",
|
|
291
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
292
|
+
"if": {
|
|
293
|
+
"tool": [
|
|
294
|
+
"git_rebase"
|
|
295
|
+
]
|
|
296
|
+
},
|
|
297
|
+
"then": "escalate",
|
|
298
|
+
"reason": "git_rebase modifies git history and requires human approval."
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"name": "escalate-git-reset",
|
|
302
|
+
"description": "Escalate git reset operations that modify git state.",
|
|
303
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
304
|
+
"if": {
|
|
305
|
+
"tool": [
|
|
306
|
+
"git_reset"
|
|
307
|
+
]
|
|
308
|
+
},
|
|
309
|
+
"then": "escalate",
|
|
310
|
+
"reason": "git_reset modifies git state and requires human approval."
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"name": "escalate-git-cherry-pick",
|
|
314
|
+
"description": "Escalate git cherry-pick operations that modify git history.",
|
|
315
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
316
|
+
"if": {
|
|
317
|
+
"tool": [
|
|
318
|
+
"git_cherry_pick"
|
|
319
|
+
]
|
|
320
|
+
},
|
|
321
|
+
"then": "escalate",
|
|
322
|
+
"reason": "git_cherry_pick modifies git history and requires human approval."
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"name": "escalate-git-pull",
|
|
326
|
+
"description": "Escalate git pull operations that modify git state.",
|
|
327
|
+
"principle": "The agent must ask for approval before modifying git state (commit, checkout, merge, rebase).",
|
|
328
|
+
"if": {
|
|
329
|
+
"tool": [
|
|
330
|
+
"git_pull"
|
|
331
|
+
]
|
|
332
|
+
},
|
|
333
|
+
"then": "escalate",
|
|
334
|
+
"reason": "git_pull fetches and merges, modifying git state, and requires human approval."
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
"name": "escalate-git-push",
|
|
338
|
+
"description": "Escalate git push operations to GitHub for human approval.",
|
|
339
|
+
"principle": "The agent must ask for approval before any write, create, delete, or push operation.",
|
|
340
|
+
"if": {
|
|
341
|
+
"tool": [
|
|
342
|
+
"git_push"
|
|
343
|
+
],
|
|
344
|
+
"domains": {
|
|
345
|
+
"roles": [
|
|
346
|
+
"git-remote-url"
|
|
347
|
+
],
|
|
348
|
+
"allowed": [
|
|
349
|
+
"github.com"
|
|
350
|
+
]
|
|
351
|
+
}
|
|
352
|
+
},
|
|
353
|
+
"then": "escalate",
|
|
354
|
+
"reason": "Constitution requires human approval before push operations even to GitHub."
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"name": "escalate-git-add",
|
|
358
|
+
"description": "Escalate git add (staging files modifies git index state).",
|
|
359
|
+
"principle": "The agent must ask for approval before modifying git state.",
|
|
360
|
+
"if": {
|
|
361
|
+
"tool": [
|
|
362
|
+
"git_add"
|
|
363
|
+
]
|
|
364
|
+
},
|
|
365
|
+
"then": "escalate",
|
|
366
|
+
"reason": "Staging files modifies the git index and requires human approval per the constitution."
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"name": "escalate-git-tag",
|
|
370
|
+
"description": "Escalate git tag operations that create or delete tags.",
|
|
371
|
+
"principle": "The agent must ask for approval before modifying git state.",
|
|
372
|
+
"if": {
|
|
373
|
+
"tool": [
|
|
374
|
+
"git_tag"
|
|
375
|
+
]
|
|
376
|
+
},
|
|
377
|
+
"then": "escalate",
|
|
378
|
+
"reason": "Creating or deleting tags modifies git state and requires human approval."
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"name": "escalate-git-worktree",
|
|
382
|
+
"description": "Escalate git worktree operations that create or delete working trees.",
|
|
383
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
384
|
+
"if": {
|
|
385
|
+
"tool": [
|
|
386
|
+
"git_worktree"
|
|
387
|
+
]
|
|
388
|
+
},
|
|
389
|
+
"then": "escalate",
|
|
390
|
+
"reason": "git_worktree can create or delete working trees and requires human approval."
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"name": "escalate-git-init",
|
|
394
|
+
"description": "Escalate git init that creates a new repository.",
|
|
395
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
396
|
+
"if": {
|
|
397
|
+
"tool": [
|
|
398
|
+
"git_init"
|
|
399
|
+
]
|
|
400
|
+
},
|
|
401
|
+
"then": "escalate",
|
|
402
|
+
"reason": "git_init creates a new git repository on disk and requires human approval."
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"name": "allow-github-read-operations",
|
|
406
|
+
"description": "Allow read-only GitHub API operations: listing/reading issues, PRs, repos, commits, tags, releases, users, teams, and code search.",
|
|
407
|
+
"principle": "GitHub read access: Querying GitHub repositories, issues, and pull requests is permitted for reading.",
|
|
408
|
+
"if": {
|
|
409
|
+
"tool": [
|
|
410
|
+
"get_commit",
|
|
411
|
+
"get_file_contents",
|
|
412
|
+
"get_label",
|
|
413
|
+
"get_latest_release",
|
|
414
|
+
"get_me",
|
|
415
|
+
"get_release_by_tag",
|
|
416
|
+
"get_tag",
|
|
417
|
+
"get_team_members",
|
|
418
|
+
"get_teams",
|
|
419
|
+
"issue_read",
|
|
420
|
+
"list_branches",
|
|
421
|
+
"list_commits",
|
|
422
|
+
"list_issue_types",
|
|
423
|
+
"list_issues",
|
|
424
|
+
"list_pull_requests",
|
|
425
|
+
"list_releases",
|
|
426
|
+
"list_tags",
|
|
427
|
+
"pull_request_read",
|
|
428
|
+
"search_code",
|
|
429
|
+
"search_issues",
|
|
430
|
+
"search_pull_requests",
|
|
431
|
+
"search_repositories",
|
|
432
|
+
"search_users"
|
|
433
|
+
]
|
|
434
|
+
},
|
|
435
|
+
"then": "allow",
|
|
436
|
+
"reason": "Constitution explicitly permits querying GitHub repositories, issues, and pull requests for reading."
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"name": "escalate-github-write-operations",
|
|
440
|
+
"description": "Escalate all GitHub mutation operations for human approval.",
|
|
441
|
+
"principle": "No mutations: Any operation that creates, modifies, or deletes data must be escalated for human approval.",
|
|
442
|
+
"if": {
|
|
443
|
+
"tool": [
|
|
444
|
+
"add_comment_to_pending_review",
|
|
445
|
+
"add_issue_comment",
|
|
446
|
+
"add_reply_to_pull_request_comment",
|
|
447
|
+
"assign_copilot_to_issue",
|
|
448
|
+
"create_branch",
|
|
449
|
+
"create_or_update_file",
|
|
450
|
+
"create_pull_request",
|
|
451
|
+
"create_repository",
|
|
452
|
+
"delete_file",
|
|
453
|
+
"fork_repository",
|
|
454
|
+
"issue_write",
|
|
455
|
+
"merge_pull_request",
|
|
456
|
+
"pull_request_review_write",
|
|
457
|
+
"push_files",
|
|
458
|
+
"request_copilot_review",
|
|
459
|
+
"sub_issue_write",
|
|
460
|
+
"update_pull_request",
|
|
461
|
+
"update_pull_request_branch"
|
|
462
|
+
]
|
|
463
|
+
},
|
|
464
|
+
"then": "escalate",
|
|
465
|
+
"reason": "Constitution requires human approval before any write, create, delete, or push operation on GitHub."
|
|
466
|
+
}
|
|
467
|
+
]
|
|
468
|
+
}
|
package/dist/config/index.d.ts
CHANGED
|
@@ -40,6 +40,14 @@ export declare function loadConfig(): IronCurtainConfig;
|
|
|
40
40
|
* The `*` wildcard is preserved (not filtered) so that the untrusted domain gate fires
|
|
41
41
|
* for servers with `["*"]`. The SSRF structural invariant in
|
|
42
42
|
* `domainMatchesAllowlist()` prevents `*` from matching IP addresses.
|
|
43
|
+
*
|
|
44
|
+
* SECURITY NOTE: This is the primary defense against compiled "allow" rules that
|
|
45
|
+
* lack a URL/domain constraint (e.g. allow-git-push-default-remote). Such rules
|
|
46
|
+
* are intended as fallbacks for when no remote URL is supplied, but they will also
|
|
47
|
+
* fire for explicit unauthorized URLs if no structural gate catches them first.
|
|
48
|
+
* Servers without an allowedDomains entry in mcp-servers.json have no structural
|
|
49
|
+
* URL gate — compiled rules are the only defense in that case, and broad no-constraint
|
|
50
|
+
* allow rules create a gap. See the KNOWN GAP comment in policy-engine.ts.
|
|
43
51
|
*/
|
|
44
52
|
export declare function extractServerDomainAllowlists(mcpServers: Record<string, MCPServerConfig>): Map<string, string[]>;
|
|
45
53
|
/**
|
|
@@ -48,7 +56,19 @@ export declare function extractServerDomainAllowlists(mcpServers: Record<string,
|
|
|
48
56
|
* last `ironcurtain compile-policy` run.
|
|
49
57
|
*/
|
|
50
58
|
export declare function checkConstitutionFreshness(compiledPolicy: CompiledPolicyFile, constitutionPath: string): void;
|
|
51
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Options for loading generated policy artifacts with split directories.
|
|
61
|
+
* Allows policy files and tool annotations to come from different dirs.
|
|
62
|
+
*/
|
|
63
|
+
export interface PolicyLoadOptions {
|
|
64
|
+
/** Directory for compiled-policy.json and dynamic-lists.json. */
|
|
65
|
+
readonly policyDir: string;
|
|
66
|
+
/** Directory for tool-annotations.json (always global). */
|
|
67
|
+
readonly toolAnnotationsDir: string;
|
|
68
|
+
/** Fallback directory for missing artifacts (package-bundled defaults). */
|
|
69
|
+
readonly fallbackDir?: string;
|
|
70
|
+
}
|
|
71
|
+
export declare function loadGeneratedPolicy(options: PolicyLoadOptions): {
|
|
52
72
|
compiledPolicy: CompiledPolicyFile;
|
|
53
73
|
toolAnnotations: ToolAnnotationsFile;
|
|
54
74
|
dynamicLists: DynamicListsFile | undefined;
|
package/dist/config/index.js
CHANGED
|
@@ -214,6 +214,14 @@ export function loadConfig() {
|
|
|
214
214
|
* The `*` wildcard is preserved (not filtered) so that the untrusted domain gate fires
|
|
215
215
|
* for servers with `["*"]`. The SSRF structural invariant in
|
|
216
216
|
* `domainMatchesAllowlist()` prevents `*` from matching IP addresses.
|
|
217
|
+
*
|
|
218
|
+
* SECURITY NOTE: This is the primary defense against compiled "allow" rules that
|
|
219
|
+
* lack a URL/domain constraint (e.g. allow-git-push-default-remote). Such rules
|
|
220
|
+
* are intended as fallbacks for when no remote URL is supplied, but they will also
|
|
221
|
+
* fire for explicit unauthorized URLs if no structural gate catches them first.
|
|
222
|
+
* Servers without an allowedDomains entry in mcp-servers.json have no structural
|
|
223
|
+
* URL gate — compiled rules are the only defense in that case, and broad no-constraint
|
|
224
|
+
* allow rules create a gap. See the KNOWN GAP comment in policy-engine.ts.
|
|
217
225
|
*/
|
|
218
226
|
export function extractServerDomainAllowlists(mcpServers) {
|
|
219
227
|
const allowlists = new Map();
|
|
@@ -242,10 +250,10 @@ export function checkConstitutionFreshness(compiledPolicy, constitutionPath) {
|
|
|
242
250
|
'Run `ironcurtain compile-policy` to update the compiled policy.\n');
|
|
243
251
|
}
|
|
244
252
|
}
|
|
245
|
-
export function loadGeneratedPolicy(
|
|
246
|
-
const compiledPolicy = JSON.parse(readGeneratedFile(
|
|
247
|
-
const toolAnnotations = JSON.parse(readGeneratedFile(
|
|
248
|
-
const dynamicLists = loadOptionalGeneratedFile(
|
|
253
|
+
export function loadGeneratedPolicy(options) {
|
|
254
|
+
const compiledPolicy = JSON.parse(readGeneratedFile(options.policyDir, 'compiled-policy.json', options.fallbackDir));
|
|
255
|
+
const toolAnnotations = JSON.parse(readGeneratedFile(options.toolAnnotationsDir, 'tool-annotations.json', options.fallbackDir));
|
|
256
|
+
const dynamicLists = loadOptionalGeneratedFile(options.policyDir, 'dynamic-lists.json', options.fallbackDir);
|
|
249
257
|
return { compiledPolicy, toolAnnotations, dynamicLists };
|
|
250
258
|
}
|
|
251
259
|
/**
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,14 +12,8 @@
|
|
|
12
12
|
"env": {
|
|
13
13
|
"MCP_TRANSPORT_TYPE": "stdio"
|
|
14
14
|
},
|
|
15
|
-
"sandbox":
|
|
16
|
-
|
|
17
|
-
"denyRead": ["~/.gnupg", "~/.aws"]
|
|
18
|
-
},
|
|
19
|
-
"network": {
|
|
20
|
-
"allowedDomains": ["github.com", "*.github.com", "gitlab.com", "*.gitlab.com"]
|
|
21
|
-
}
|
|
22
|
-
}
|
|
15
|
+
"sandbox": false,
|
|
16
|
+
"_comment": "sandbox: false because @anthropic-ai/sandbox-runtime always runs with --unshare-net (network namespace isolation). On Linux there is no way to selectively allow network access — the SOCKS proxy + GIT_SSH_COMMAND workaround is only implemented on macOS. With sandboxing enabled, git push/fetch/clone over SSH fail with DNS resolution errors. The intended config once upstream supports selective network on Linux: { \"filesystem\": { \"denyRead\": [\"~/.gnupg\", \"~/.aws\"] }, \"network\": { \"allowedDomains\": [\"github.com\", \"*.github.com\", \"gitlab.com\", \"*.gitlab.com\"] } }"
|
|
23
17
|
},
|
|
24
18
|
"fetch": {
|
|
25
19
|
"description": "HTTP requests and web search",
|
package/dist/config/paths.d.ts
CHANGED
|
@@ -22,6 +22,11 @@ export declare function getSessionSandboxDir(sessionId: string): string;
|
|
|
22
22
|
* {home}/sessions/{sessionId}/escalations/
|
|
23
23
|
*/
|
|
24
24
|
export declare function getSessionEscalationDir(sessionId: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Returns the session metadata path for a given session:
|
|
27
|
+
* {home}/sessions/{sessionId}/session-metadata.json
|
|
28
|
+
*/
|
|
29
|
+
export declare function getSessionMetadataPath(sessionId: string): string;
|
|
25
30
|
/**
|
|
26
31
|
* Returns the audit log path for a given session:
|
|
27
32
|
* {home}/sessions/{sessionId}/audit.jsonl
|
|
@@ -104,6 +109,18 @@ export declare function getBaseUserConstitutionPath(): string;
|
|
|
104
109
|
* to the package-bundled defaults in dist/config/generated/.
|
|
105
110
|
*/
|
|
106
111
|
export declare function getUserGeneratedDir(): string;
|
|
112
|
+
/**
|
|
113
|
+
* Returns the package-bundled read-only policy directory.
|
|
114
|
+
* Contains compiled-policy.json derived from constitution-readonly.md.
|
|
115
|
+
* This is always the package version -- not user-local.
|
|
116
|
+
*/
|
|
117
|
+
export declare function getReadOnlyPolicyDir(): string;
|
|
118
|
+
/**
|
|
119
|
+
* Returns the package-bundled config directory.
|
|
120
|
+
* Used to validate that a policyDir is within a trusted location
|
|
121
|
+
* (either the user's IronCurtain home or the package config dir).
|
|
122
|
+
*/
|
|
123
|
+
export declare function getPackageConfigDir(): string;
|
|
107
124
|
/**
|
|
108
125
|
* Loads the combined constitution text (base + optional user constitution).
|
|
109
126
|
* If ~/.ironcurtain/constitution.md exists, it replaces the package-bundled base.
|
|
@@ -115,3 +132,33 @@ export declare function loadConstitutionText(packageBasePath: string): string;
|
|
|
115
132
|
* Loads the combined constitution and returns its SHA-256 hex digest.
|
|
116
133
|
*/
|
|
117
134
|
export declare function computeConstitutionHash(basePath: string): string;
|
|
135
|
+
/**
|
|
136
|
+
* Returns the daemon control socket path: {home}/daemon.sock
|
|
137
|
+
*
|
|
138
|
+
* The daemon listens on this Unix domain socket so CLI commands
|
|
139
|
+
* can communicate with a running daemon (e.g., add-job, run-job).
|
|
140
|
+
*/
|
|
141
|
+
export declare function getDaemonSocketPath(): string;
|
|
142
|
+
/**
|
|
143
|
+
* Returns the jobs base directory: {home}/jobs/
|
|
144
|
+
*/
|
|
145
|
+
export declare function getJobsDir(): string;
|
|
146
|
+
/**
|
|
147
|
+
* Returns the directory for a specific job: {home}/jobs/{jobId}/
|
|
148
|
+
*/
|
|
149
|
+
export declare function getJobDir(jobId: string): string;
|
|
150
|
+
/**
|
|
151
|
+
* Returns the generated artifacts directory for a job:
|
|
152
|
+
* {home}/jobs/{jobId}/generated/
|
|
153
|
+
*/
|
|
154
|
+
export declare function getJobGeneratedDir(jobId: string): string;
|
|
155
|
+
/**
|
|
156
|
+
* Returns the workspace directory for a job:
|
|
157
|
+
* {home}/jobs/{jobId}/workspace/
|
|
158
|
+
*/
|
|
159
|
+
export declare function getJobWorkspaceDir(jobId: string): string;
|
|
160
|
+
/**
|
|
161
|
+
* Returns the runs directory for a job:
|
|
162
|
+
* {home}/jobs/{jobId}/runs/
|
|
163
|
+
*/
|
|
164
|
+
export declare function getJobRunsDir(jobId: string): string;
|