crabcode 0.1.6__py3-none-win_amd64.whl
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.
- crabcode-0.1.6.dist-info/METADATA +63 -0
- crabcode-0.1.6.dist-info/RECORD +205 -0
- crabcode-0.1.6.dist-info/WHEEL +4 -0
- crabcode-0.1.6.dist-info/entry_points.txt +2 -0
- crabcode_cli/__init__.py +7 -0
- crabcode_cli/__main__.py +4 -0
- crabcode_cli/_native/crabcode-computer-use-host.exe +0 -0
- crabcode_cli/_native/runtime.json +6 -0
- crabcode_cli/app.py +776 -0
- crabcode_cli/banner.py +39 -0
- crabcode_cli/computer_use.py +286 -0
- crabcode_cli/model_manager.py +649 -0
- crabcode_cli/model_picker.py +168 -0
- crabcode_cli/pipe.py +148 -0
- crabcode_cli/render/__init__.py +0 -0
- crabcode_cli/render/messages.py +19 -0
- crabcode_cli/repl.py +4841 -0
- crabcode_cli/session_picker.py +239 -0
- crabcode_core/__init__.py +7 -0
- crabcode_core/_version.py +3 -0
- crabcode_core/_windows_process.py +68 -0
- crabcode_core/agent_manager.py +1731 -0
- crabcode_core/api/__init__.py +20 -0
- crabcode_core/api/anthropic_adapter.py +648 -0
- crabcode_core/api/azure_adapter.py +69 -0
- crabcode_core/api/base.py +233 -0
- crabcode_core/api/codex_adapter.py +1327 -0
- crabcode_core/api/error_logging.py +132 -0
- crabcode_core/api/gemini_adapter.py +26 -0
- crabcode_core/api/model_info.py +257 -0
- crabcode_core/api/network.py +62 -0
- crabcode_core/api/ollama_adapter.py +27 -0
- crabcode_core/api/openai_adapter.py +323 -0
- crabcode_core/api/registry.py +58 -0
- crabcode_core/command_line.py +18 -0
- crabcode_core/compact/__init__.py +17 -0
- crabcode_core/compact/compact.py +514 -0
- crabcode_core/compact/context_tokens.py +165 -0
- crabcode_core/computer_use_mode.py +38 -0
- crabcode_core/computer_use_observation.py +144 -0
- crabcode_core/config/__init__.py +3 -0
- crabcode_core/config/claudemd.py +61 -0
- crabcode_core/config/manager.py +237 -0
- crabcode_core/config/model_catalog.py +256 -0
- crabcode_core/events.py +4896 -0
- crabcode_core/file_lock.py +81 -0
- crabcode_core/filesystem.py +22 -0
- crabcode_core/goal.py +149 -0
- crabcode_core/hooks/__init__.py +5 -0
- crabcode_core/hooks/manager.py +290 -0
- crabcode_core/image_io.py +111 -0
- crabcode_core/io_worker.py +211 -0
- crabcode_core/logging_utils.py +168 -0
- crabcode_core/lsp/__init__.py +6 -0
- crabcode_core/lsp/client.py +786 -0
- crabcode_core/lsp/diagnostics.py +150 -0
- crabcode_core/lsp/manager.py +583 -0
- crabcode_core/mcp/__init__.py +4 -0
- crabcode_core/mcp/client.py +169 -0
- crabcode_core/mcp/config.py +57 -0
- crabcode_core/path_validation.py +34 -0
- crabcode_core/paths.py +24 -0
- crabcode_core/peer/__init__.py +10 -0
- crabcode_core/peer/runtime.py +518 -0
- crabcode_core/permissions/__init__.py +7 -0
- crabcode_core/permissions/ai_reviewer.py +184 -0
- crabcode_core/permissions/manager.py +187 -0
- crabcode_core/plan/__init__.py +5 -0
- crabcode_core/plan/executor.py +270 -0
- crabcode_core/plan/types.py +169 -0
- crabcode_core/prompts/__init__.py +0 -0
- crabcode_core/prompts/blocks.py +10 -0
- crabcode_core/prompts/context.py +229 -0
- crabcode_core/prompts/library.py +92 -0
- crabcode_core/prompts/profile.py +79 -0
- crabcode_core/prompts/system.py +356 -0
- crabcode_core/prompts/templates.py +104 -0
- crabcode_core/query/__init__.py +0 -0
- crabcode_core/query/computer_use_history.py +83 -0
- crabcode_core/query/loop.py +2446 -0
- crabcode_core/query/retry.py +116 -0
- crabcode_core/schedule/__init__.py +13 -0
- crabcode_core/schedule/manager.py +631 -0
- crabcode_core/schedule/models.py +204 -0
- crabcode_core/schedule/store.py +558 -0
- crabcode_core/schedule/timing.py +287 -0
- crabcode_core/session/__init__.py +12 -0
- crabcode_core/session/export.py +141 -0
- crabcode_core/session/meta_db.py +684 -0
- crabcode_core/session/storage.py +2032 -0
- crabcode_core/session/title_gen.py +52 -0
- crabcode_core/skills/__init__.py +6 -0
- crabcode_core/skills/context.py +23 -0
- crabcode_core/skills/loader.py +214 -0
- crabcode_core/skills/matcher.py +203 -0
- crabcode_core/snapshot/__init__.py +21 -0
- crabcode_core/snapshot/snapshot.py +436 -0
- crabcode_core/snapshot/tracker.py +359 -0
- crabcode_core/subprocess_utils.py +260 -0
- crabcode_core/team/__init__.py +27 -0
- crabcode_core/team/bridge.py +66 -0
- crabcode_core/team/inbox.py +237 -0
- crabcode_core/team/manager.py +1660 -0
- crabcode_core/team/message_bus.py +821 -0
- crabcode_core/team/models.py +191 -0
- crabcode_core/team/recovery.py +192 -0
- crabcode_core/text_io.py +52 -0
- crabcode_core/tools/__init__.py +112 -0
- crabcode_core/tools/_input_helpers.py +39 -0
- crabcode_core/tools/_input_schema.py +130 -0
- crabcode_core/tools/agent.py +413 -0
- crabcode_core/tools/apply_patch.py +587 -0
- crabcode_core/tools/ask_user.py +122 -0
- crabcode_core/tools/bash.py +154 -0
- crabcode_core/tools/browser.py +678 -0
- crabcode_core/tools/checklist.py +241 -0
- crabcode_core/tools/checkpoint.py +78 -0
- crabcode_core/tools/computer_use.py +599 -0
- crabcode_core/tools/diff_utils.py +123 -0
- crabcode_core/tools/file_edit.py +240 -0
- crabcode_core/tools/file_read.py +187 -0
- crabcode_core/tools/file_write.py +154 -0
- crabcode_core/tools/glob.py +123 -0
- crabcode_core/tools/goal.py +134 -0
- crabcode_core/tools/grep.py +247 -0
- crabcode_core/tools/image.py +173 -0
- crabcode_core/tools/image_generate.py +115 -0
- crabcode_core/tools/lint.py +388 -0
- crabcode_core/tools/loading.py +187 -0
- crabcode_core/tools/memory.py +456 -0
- crabcode_core/tools/monitor.py +677 -0
- crabcode_core/tools/peer.py +103 -0
- crabcode_core/tools/revert.py +90 -0
- crabcode_core/tools/schedule.py +683 -0
- crabcode_core/tools/skill.py +108 -0
- crabcode_core/tools/switch_mode.py +213 -0
- crabcode_core/tools/team.py +329 -0
- crabcode_core/tools/tool_search.py +64 -0
- crabcode_core/tools/web_search.py +444 -0
- crabcode_core/turn_details.py +64 -0
- crabcode_core/types/__init__.py +95 -0
- crabcode_core/types/config.py +434 -0
- crabcode_core/types/event.py +334 -0
- crabcode_core/types/message.py +263 -0
- crabcode_core/types/tool.py +208 -0
- crabcode_core/usage.py +289 -0
- crabcode_core/utf8_sanitize.py +29 -0
- crabcode_debugger/__init__.py +5 -0
- crabcode_debugger/adapters.py +332 -0
- crabcode_debugger/dap.py +304 -0
- crabcode_debugger/memory.py +1806 -0
- crabcode_debugger/process.py +707 -0
- crabcode_debugger/runtime.py +58 -0
- crabcode_debugger/sessions.py +387 -0
- crabcode_debugger/tool.py +731 -0
- crabcode_gateway/__init__.py +18 -0
- crabcode_gateway/acp/__init__.py +13 -0
- crabcode_gateway/acp/agent.py +1581 -0
- crabcode_gateway/acp/session.py +114 -0
- crabcode_gateway/acp/transport.py +39 -0
- crabcode_gateway/acp/types.py +90 -0
- crabcode_gateway/adapter.py +30 -0
- crabcode_gateway/auth.py +139 -0
- crabcode_gateway/computer_use.py +364 -0
- crabcode_gateway/document_engine.py +637 -0
- crabcode_gateway/document_worker.py +301 -0
- crabcode_gateway/event_bus.py +655 -0
- crabcode_gateway/grpc/__init__.py +0 -0
- crabcode_gateway/grpc/crabcode_pb2.py +70 -0
- crabcode_gateway/grpc/crabcode_pb2_grpc.py +474 -0
- crabcode_gateway/grpc/proto/crabcode.proto +160 -0
- crabcode_gateway/grpc/server.py +765 -0
- crabcode_gateway/middleware.py +344 -0
- crabcode_gateway/protocol.py +17 -0
- crabcode_gateway/routes/__init__.py +0 -0
- crabcode_gateway/routes/agent.py +392 -0
- crabcode_gateway/routes/auth.py +150 -0
- crabcode_gateway/routes/computer_use.py +101 -0
- crabcode_gateway/routes/config.py +1698 -0
- crabcode_gateway/routes/document.py +1810 -0
- crabcode_gateway/routes/event.py +3801 -0
- crabcode_gateway/routes/git_review.py +232 -0
- crabcode_gateway/routes/health.py +14 -0
- crabcode_gateway/routes/peer.py +78 -0
- crabcode_gateway/routes/permission.py +121 -0
- crabcode_gateway/routes/schedule.py +300 -0
- crabcode_gateway/routes/session.py +1496 -0
- crabcode_gateway/routes/snapshot.py +211 -0
- crabcode_gateway/routes/tasks.py +318 -0
- crabcode_gateway/routes/team.py +392 -0
- crabcode_gateway/routes/usage.py +49 -0
- crabcode_gateway/routes/workspace.py +299 -0
- crabcode_gateway/safe_file.py +63 -0
- crabcode_gateway/schemas.py +1820 -0
- crabcode_gateway/server.py +514 -0
- crabcode_gateway/session_registry.py +36 -0
- crabcode_gateway/task_registry.py +708 -0
- crabcode_gateway/turn_details.py +60 -0
- crabcode_search/__init__.py +11 -0
- crabcode_search/background.py +368 -0
- crabcode_search/chunker.py +517 -0
- crabcode_search/embedder.py +497 -0
- crabcode_search/indexer.py +215 -0
- crabcode_search/store.py +222 -0
- crabcode_search/tool.py +268 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package crabcode;
|
|
4
|
+
|
|
5
|
+
// ── Messages ────────────────────────────────────────────────────
|
|
6
|
+
|
|
7
|
+
message Empty {
|
|
8
|
+
// Optional selector used by session-scoped configuration RPCs. Existing
|
|
9
|
+
// clients can continue sending an empty message and use the default session.
|
|
10
|
+
string session_id = 1;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
message SendMessageRequest {
|
|
14
|
+
string text = 1;
|
|
15
|
+
int32 max_turns = 2;
|
|
16
|
+
string session_id = 3;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
message SubscribeRequest {
|
|
20
|
+
string session_id = 1;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
message SpawnAgentRequest {
|
|
24
|
+
string prompt = 1;
|
|
25
|
+
string subagent_type = 2;
|
|
26
|
+
optional string name = 3;
|
|
27
|
+
optional string model_profile = 4;
|
|
28
|
+
bool callback = 5;
|
|
29
|
+
string session_id = 6;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
message SpawnAgentResponse {
|
|
33
|
+
string agent_id = 1;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
message GetAgentRequest {
|
|
37
|
+
string agent_id = 1;
|
|
38
|
+
string session_id = 2;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
message ListAgentsRequest {
|
|
42
|
+
string session_id = 1;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
message CancelAgentRequest {
|
|
46
|
+
string agent_id = 1;
|
|
47
|
+
string session_id = 2;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
message CancelAgentResponse {
|
|
51
|
+
bool ok = 1;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
message WaitAgentRequest {
|
|
55
|
+
repeated string agent_ids = 1;
|
|
56
|
+
optional int32 timeout_ms = 2;
|
|
57
|
+
string session_id = 3;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
message PermissionResponseMsg {
|
|
61
|
+
string tool_use_id = 1;
|
|
62
|
+
bool allowed = 2;
|
|
63
|
+
bool always_allow = 3;
|
|
64
|
+
optional string agent_id = 4;
|
|
65
|
+
string session_id = 5;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
message ChoiceResponseMsg {
|
|
69
|
+
string tool_use_id = 1;
|
|
70
|
+
repeated string selected = 2;
|
|
71
|
+
bool cancelled = 3;
|
|
72
|
+
optional string agent_id = 4;
|
|
73
|
+
string session_id = 5;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
message SwitchModelRequest {
|
|
77
|
+
string name = 1;
|
|
78
|
+
string session_id = 2;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
message SwitchModeRequest {
|
|
82
|
+
string mode = 1; // "agent" | "plan"
|
|
83
|
+
string session_id = 2;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
message ListModelsResponse {
|
|
87
|
+
repeated ModelEntry models = 1;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
message ModelEntry {
|
|
91
|
+
string name = 1;
|
|
92
|
+
string description = 2;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
message HealthCheckResponse {
|
|
96
|
+
string status = 1;
|
|
97
|
+
string version = 2;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// ── CoreEvent on the wire ───────────────────────────────────────
|
|
101
|
+
|
|
102
|
+
message CoreEventProto {
|
|
103
|
+
string type = 1;
|
|
104
|
+
string payload_json = 2; // JSON-encoded EventPayload
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// ── Agent snapshot ──────────────────────────────────────────────
|
|
108
|
+
|
|
109
|
+
message AgentSnapshotProto {
|
|
110
|
+
string agent_id = 1;
|
|
111
|
+
optional string parent_agent_id = 2;
|
|
112
|
+
string title = 3;
|
|
113
|
+
string subagent_type = 4;
|
|
114
|
+
string status = 5;
|
|
115
|
+
string model = 6;
|
|
116
|
+
string created_at = 7;
|
|
117
|
+
map<string, int64> usage = 8;
|
|
118
|
+
string final_result = 9;
|
|
119
|
+
string error = 10;
|
|
120
|
+
string session_id = 11;
|
|
121
|
+
optional string finished_at = 12;
|
|
122
|
+
optional string transcript_path = 13;
|
|
123
|
+
bool callback_enabled = 14;
|
|
124
|
+
string callback_state = 15;
|
|
125
|
+
optional string callback_message_id = 16;
|
|
126
|
+
int32 callback_epoch = 17;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
message ListAgentsResponse {
|
|
130
|
+
repeated AgentSnapshotProto agents = 1;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
// ── Service ─────────────────────────────────────────────────────
|
|
134
|
+
|
|
135
|
+
service CrabCodeService {
|
|
136
|
+
// Streaming conversation
|
|
137
|
+
rpc SendMessage(SendMessageRequest) returns (stream CoreEventProto);
|
|
138
|
+
|
|
139
|
+
// Subscribe to all events for a session
|
|
140
|
+
rpc SubscribeEvents(SubscribeRequest) returns (stream CoreEventProto);
|
|
141
|
+
|
|
142
|
+
// Agent management
|
|
143
|
+
rpc SpawnAgent(SpawnAgentRequest) returns (SpawnAgentResponse);
|
|
144
|
+
rpc GetAgent(GetAgentRequest) returns (AgentSnapshotProto);
|
|
145
|
+
rpc ListAgents(ListAgentsRequest) returns (ListAgentsResponse);
|
|
146
|
+
rpc CancelAgent(CancelAgentRequest) returns (CancelAgentResponse);
|
|
147
|
+
rpc WaitAgent(WaitAgentRequest) returns (AgentSnapshotProto);
|
|
148
|
+
|
|
149
|
+
// Permission & choice
|
|
150
|
+
rpc RespondPermission(PermissionResponseMsg) returns (Empty);
|
|
151
|
+
rpc RespondChoice(ChoiceResponseMsg) returns (Empty);
|
|
152
|
+
|
|
153
|
+
// Configuration
|
|
154
|
+
rpc ListModels(Empty) returns (ListModelsResponse);
|
|
155
|
+
rpc SwitchModel(SwitchModelRequest) returns (Empty);
|
|
156
|
+
rpc SwitchMode(SwitchModeRequest) returns (Empty);
|
|
157
|
+
|
|
158
|
+
// Health
|
|
159
|
+
rpc HealthCheck(Empty) returns (HealthCheckResponse);
|
|
160
|
+
}
|