MCPcopy Create free account

hub / github.com/Louisym/MiniCC / functions

Functions1,659 in github.com/Louisym/MiniCC

↓ 1 callersFunctionfake_sse_stream
模拟 Anthropic API 的 SSE 流
tutorials/17_async_await_for_sse.py:196
↓ 1 callersMethodfeature_config
(&self)
rust/crates/runtime/src/config.rs:280
↓ 1 callersFunctionfilter_tools_by_permission_context
(tools: tuple[PortingModule, ...], permission_context: ToolPermissionContext | None = None)
src/tools.py:56
↓ 1 callersFunctionfinal_assistant_text
(summary: &runtime::TurnSummary)
rust/crates/tools/src/lib.rs:1887
↓ 1 callersFunctionfinal_assistant_text
(summary: &runtime::TurnSummary)
rust/crates/rusty-claude-cli/src/main.rs:2563
↓ 1 callersFunctionfind_commands
(query: str, limit: int = 20)
src/commands.py:69
↓ 1 callersFunctionfind_git_root
()
rust/crates/rusty-claude-cli/src/main.rs:800
↓ 1 callersFunctionfind_header_end
(bytes: &[u8])
rust/crates/api/tests/client_integration.rs:386
↓ 1 callersFunctionfind_stream_safe_boundary
(markdown: &str)
rust/crates/rusty-claude-cli/src/render.rs:637
↓ 1 callersFunctionfind_tools
(query: str, limit: int = 20)
src/tools.py:75
↓ 1 callersMethodfinish
(&mut self)
rust/crates/api/src/sse.rs:28
↓ 1 callersMethodfinish
(&mut self)
rust/crates/runtime/src/sse.rs:44
↓ 1 callersMethodfinish
流结束时调用。处理缓冲区中剩余的数据。 对应源码: runtime/sse.rs:44-53 (finish)
tutorials/10_sse_streaming.py:175
↓ 1 callersMethodfinish_code_block
(&self, code_buffer: &str, code_language: &str, output: &mut String)
rust/crates/rusty-claude-cli/src/render.rs:471
↓ 1 callersFunctionfirst_text_block
(message: &ConversationMessage)
rust/crates/runtime/src/compact.rs:281
↓ 1 callersMethodflush_transcript
(self)
src/query_engine.py:137
↓ 1 callersFunctionformat_agent_terminal_output
(status: &str, result: Option<&str>, error: Option<&str>)
rust/crates/tools/src/lib.rs:1627
↓ 1 callersFunctionformat_bash_call
(parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2743
↓ 1 callersFunctionformat_bash_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2764
↓ 1 callersFunctionformat_compact_summary
(summary: &str)
rust/crates/runtime/src/compact.rs:38
↓ 1 callersFunctionformat_compact_summary
源码: compact.rs:38-50
mini_claude_code/compact.py:309
↓ 1 callersFunctionformat_edit_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2860
↓ 1 callersFunctionformat_glob_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2889
↓ 1 callersFunctionformat_grep_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2913
↓ 1 callersFunctionformat_hook_message
(result: &HookRunResult, fallback: &str)
rust/crates/runtime/src/conversation.rs:400
↓ 1 callersFunctionformat_hook_warning
(command: &str, code: i32, stdout: Option<&str>, stderr: &str)
rust/crates/runtime/src/hooks.rs:218
↓ 1 callersFunctionformat_model_report
(model: &str, message_count: usize, turns: u32)
rust/crates/rusty-claude-cli/src/main.rs:659
↓ 1 callersFunctionformat_model_switch_report
(previous: &str, next: &str, message_count: usize)
rust/crates/rusty-claude-cli/src/main.rs:672
↓ 1 callersFunctionformat_notebook_edit_mode
(mode: NotebookEditMode)
rust/crates/tools/src/lib.rs:2870
↓ 1 callersFunctionformat_patch_preview
(old_value: &str, new_value: &str)
rust/crates/rusty-claude-cli/src/main.rs:2732
↓ 1 callersFunctionformat_permissions_report
(mode: &str)
rust/crates/rusty-claude-cli/src/main.rs:681
↓ 1 callersFunctionformat_permissions_switch_report
(previous: &str, next: &str)
rust/crates/rusty-claude-cli/src/main.rs:724
↓ 1 callersFunctionformat_read_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2793
↓ 1 callersFunctionformat_resume_report
(session_path: &str, message_count: usize, turns: u32)
rust/crates/rusty-claude-cli/src/main.rs:751
↓ 1 callersFunctionformat_status
源码: main.rs:1232-1250
mini_claude_code/main.py:314
↓ 1 callersFunctionformat_structured_patch_preview
(parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2840
↓ 1 callersFunctionformat_tool_call_start
(name: &str, input: &str)
rust/crates/rusty-claude-cli/src/main.rs:2626
↓ 1 callersFunctionformat_write_result
(icon: &str, parsed: &serde_json::Value)
rust/crates/rusty-claude-cli/src/main.rs:2823
↓ 1 callersFunctionframework_notes
(detection: &RepoDetection)
rust/crates/rusty-claude-cli/src/init.rs:317
↓ 1 callersMethodfrom_dict
(data: dict)
tutorials/13_multi_agent_coordination.py:148
↓ 1 callersMethodfrom_iterables
(cls, deny_names: list[str] | None = None, deny_prefixes: list[str] | None = None)
src/permissions.py:12
↓ 1 callersFunctionfull_demo
()
tutorials/17_async_await_for_sse.py:385
↓ 1 callersFunctiongenerate_session_id
()
rust/crates/rusty-claude-cli/src/main.rs:1669
↓ 1 callersFunctionget_actions_section
()
rust/crates/runtime/src/prompt.rs:484
↓ 1 callersFunctionget_compact_continuation_message
( summary: &str, suppress_follow_up_questions: bool, recent_messages_preserved: bool, )
rust/crates/runtime/src/compact.rs:53
↓ 1 callersFunctionget_compact_continuation_message
生成压缩后的延续消息 — 源码 compact.rs:53-72 这条消息会作为 System 角色插入到压缩后的会话开头。 它告诉模型: "你的上下文被压缩了,这是摘要, 最近的消息保留了,请继续之前的工作。"
tutorials/16_prompt_building_and_compaction.py:676
↓ 1 callersFunctionget_simple_doing_tasks_section
()
rust/crates/runtime/src/prompt.rs:468
↓ 1 callersFunctionget_simple_intro_section
(has_output_style: bool)
rust/crates/runtime/src/prompt.rs:441
↓ 1 callersFunctionget_simple_system_section
()
rust/crates/runtime/src/prompt.rs:452
↓ 1 callersMethodget_spec
获取某个工具的说明书
tutorials/03_tool_system.py:312
↓ 1 callersFunctiongit_status_ok
(args: &[&str])
rust/crates/rusty-claude-cli/src/main.rs:2125
↓ 1 callersMethodhandle_compact
(&mut self, out: &mut impl Write)
rust/crates/rusty-claude-cli/src/app.rs:200
↓ 1 callersMethodhandle_repl_command
( &mut self, command: SlashCommand, )
rust/crates/rusty-claude-cli/src/main.rs:1140
↓ 1 callersMethodhandle_session_command
( &mut self, action: Option<&str>, target: Option<&str>, )
rust/crates/rusty-claude-cli/src/main.rs:1439
↓ 1 callersMethodhandle_status
(&mut self, out: &mut impl Write)
rust/crates/rusty-claude-cli/src/app.rs:182
↓ 1 callersMethodhandle_submission
( &mut self, input: &str, out: &mut impl Write, )
rust/crates/rusty-claude-cli/src/app.rs:138
↓ 1 callersFunctionhas_interesting_extension
(candidate: &str)
rust/crates/runtime/src/compact.rs:290
↓ 1 callersFunctionhas_upstream_fixture
(paths: &UpstreamPaths)
rust/crates/compat-harness/src/lib.rs:310
↓ 1 callersMethodhighlight
(&self, line: &'l str, _pos: usize)
rust/crates/rusty-claude-cli/src/input.rs:82
↓ 1 callersMethodhighlight_code
(&self, code: &str, language: &str)
rust/crates/rusty-claude-cli/src/render.rs:568
↓ 1 callersMethodhooks
(&self)
rust/crates/runtime/src/config.rs:290
↓ 1 callersFunctionhttp_response_with_headers
( status: &str, content_type: &str, body: &str, headers: &[(&str, &str)], )
rust/crates/api/tests/client_integration.rs:394
↓ 1 callersFunctionindent_block
(value: &str, spaces: usize)
rust/crates/rusty-claude-cli/src/main.rs:2104
↓ 1 callersFunctioninfer_current_work
(messages: &[ConversationMessage])
rust/crates/runtime/src/compact.rs:272
↓ 1 callersFunctioninherited_upstream_proxy_env
( env_map: &BTreeMap<String, String>, )
rust/crates/runtime/src/remote.rs:221
↓ 1 callersFunctioninit_claude_md
()
rust/crates/rusty-claude-cli/src/main.rs:1967
↓ 1 callersFunctioninterpret_hook_exit_code
对应 hooks.rs:179-196
tutorials/19_process_and_pipe_communication.py:408
↓ 1 callersMethodis_eof
(&self)
rust/crates/runtime/src/json.rs:326
↓ 1 callersFunctionis_image_path
(path: &Path)
rust/crates/tools/src/lib.rs:2312
↓ 1 callersMethodis_retryable
判断这个错误是否可以重试。 对应源码: api/error.rs:34-48 pub fn is_retryable(&self) -> bool { match self {
tutorials/11_error_recovery_and_retry.py:95
↓ 1 callersFunctionis_retryable_status
(status: reqwest::StatusCode)
rust/crates/api/src/client.rs:588
↓ 1 callersFunctionis_retryable_status
(status_code: int)
tutorials/11_error_recovery_and_retry.py:159
↓ 1 callersFunctioniso8601_timestamp
()
rust/crates/tools/src/lib.rs:2659
↓ 1 callersFunctionlesson_1_interface
对应源码: conversation.rs:34-36 → trait ApiClient { fn stream(...) } conversation.rs:38-39 → trait ToolExecutor { fn execute(...) }
tutorials/18_design_patterns_for_agents.py:37
↓ 1 callersFunctionlesson_1_ip_and_port
类比: IP 地址 = 大楼的门牌号 (比如 "朝阳区望京街1号") 端口号 = 大楼里的房间号 (比如 "3楼302室") 要找到一个人,你需要: 门牌号 + 房间号 = IP + 端口 常见端口号(像常见的店铺楼层): 80
tutorials/14b_networking_for_engineers.py:35
↓ 1 callersFunctionlesson_1_process
类比: 进程就像一个"员工" 你(操作系统)是一家公司的老板。 每次你要完成一个任务(比如运行 ls),你就雇一个临时工(进程)。 这个临时工有自己的: - 工号(PID,进程ID) - 工位(内存空间) - 工作目录(当前目录
tutorials/14a_os_isolation_primer.py:27
↓ 1 callersFunctionlesson_1_process_basics
当你运行 `python script.py`, 系统创建一个"进程"。 当这个 Python 脚本用 subprocess 运行另一个命令时, 就创建了"子进程"。 关系: 终端 (shell) ─→ python (父进程) ─→ ls (子进程)
tutorials/19_process_and_pipe_communication.py:44
↓ 1 callersFunctionlesson_1_why_async
问题: 同步代码在等待网络时白白浪费 CPU 想象你在烧水、切菜、洗碗三件事: - 同步: 烧水(等3分钟) → 切菜(2分钟) → 洗碗(1分钟) = 6分钟 - 异步: 烧水(开始) → 切菜(2分钟) → 水开了 → 洗碗 = 3分钟 烧水的等待时
tutorials/17_async_await_for_sse.py:26
↓ 1 callersFunctionlesson_2_core_concepts
async/await 只有四个核心概念: 1. async def — 定义一个"协程函数" 2. await — 等待一个异步操作完成 3. asyncio.run() — 启动事件循环 4. asyncio.gather() — 并发执行
tutorials/17_async_await_for_sse.py:84
↓ 1 callersFunctionlesson_2_dependency_injection
对应源码: conversation.rs:100-110 pub struct ConversationRuntime<C, T> { api_client: C, ← 从外部传入 tool_e
tutorials/18_design_patterns_for_agents.py:179
↓ 1 callersFunctionlesson_2_environment
类比: 环境变量就像"公司通讯录" 每个员工(进程)入职时,都会拿到一份公司通讯录的副本。 通讯录里写着: HOME = /Users/你的名字 (家在哪) PATH = /usr/bin:/usr/local/bin (工具箱在哪里)
tutorials/14a_os_isolation_primer.py:68
↓ 1 callersFunctionlesson_2_http_server
HTTP 就是浏览器和服务器之间的"对话协议"。 浏览器说: "GET /hello HTTP/1.1\r\nHost: localhost\r\n\r\n" 服务器答: "HTTP/1.1 200 OK\r\nContent-Length: 5\r\n\r\nhello
tutorials/14b_networking_for_engineers.py:102
↓ 1 callersFunctionlesson_2_standard_streams
每个进程出生时自带三条"管子": stdin (标准输入, fd=0) ← 进程从这里读数据 (键盘/管道) stdout (标准输出, fd=1) → 进程把正常结果写到这里 stderr (标准错误, fd=2) → 进程把错误信息写到这里
tutorials/19_process_and_pipe_communication.py:91
↓ 1 callersFunctionlesson_3_async_iterator
SSE 流式响应 = 一个"异步迭代器" 每次 yield 一个事件,直到流结束。 就像: 普通迭代器: for item in [1, 2, 3] → 立即可用 异步迭代器: async for item in stream → 可能要等网络
tutorials/17_async_await_for_sse.py:182
↓ 1 callersFunctionlesson_3_binding
当你启动一个服务器时,你要决定"谁能连进来"。 这取决于你绑定到哪个地址。
tutorials/14b_networking_for_engineers.py:212
↓ 1 callersFunctionlesson_3_builder_pattern
对应源码: prompt.rs:85-93 → SystemPromptBuilder 结构体 prompt.rs:95-156 → with_*() 链式调用 + build() 方法 conversation.rs:429-447 → Stati
tutorials/18_design_patterns_for_agents.py:345
↓ 1 callersFunctionlesson_3_home_and_tmp
类比: HOME 是你家,TMPDIR 是临时仓库 HOME 目录: 很多程序会往 HOME 里写配置文件。比如: - git 读写 ~/.gitconfig - npm 读写 ~/.npmrc - ssh 读写 ~/.ssh/
tutorials/14a_os_isolation_primer.py:124
↓ 1 callersFunctionlesson_3_pipe
管道 = 一根"水管", 一端写入, 另一端读出。 在 shell 里: ls | grep .py | wc -l 实际上是: ls 的 stdout ──pipe──→ grep 的 stdin grep 的 stdout ──pipe──→
tutorials/19_process_and_pipe_communication.py:179
↓ 1 callersFunctionlesson_4_environment_variables
对应源码 hooks.rs:166-172: child.env("HOOK_EVENT", event.as_str()); child.env("HOOK_TOOL_NAME", tool_name); child.env("HOOK_TOOL_IN
tutorials/19_process_and_pipe_communication.py:276
↓ 1 callersFunctionlesson_4_namespaces
类比: 命名空间就像"平行宇宙" 想象你在玩一个沙盒游戏(比如 Minecraft)。 你在自己的世界里建房子、挖矿、种地。 但你的世界和其他人的世界是完全隔离的—— 你在你的世界里炸了 TNT,不会影响别人的世界。 Linux 命名空间就是这个
tutorials/14a_os_isolation_primer.py:202
↓ 1 callersFunctionlesson_4_port_mapping
Docker 的 -p 8080:80 是最容易让人困惑的参数之一。
tutorials/14b_networking_for_engineers.py:285
↓ 1 callersFunctionlesson_4_registry_pattern
对应源码: conversation.rs:429-456 → StaticToolExecutor handlers: BTreeMap<String, ToolHandler> ← "名字 → 函数" 的映射 fn execute(&mu
tutorials/18_design_patterns_for_agents.py:580
↓ 1 callersFunctionlesson_4_timeout
Claude Code 的超时控制 (bash.rs:109-130) 用的就是这个模式。
tutorials/17_async_await_for_sse.py:244
↓ 1 callersFunctionlesson_5_dns
你在浏览器输入 google.com,但网络只认 IP 地址。 DNS 就是把域名翻译成 IP 地址的"电话簿"。
tutorials/14b_networking_for_engineers.py:410
↓ 1 callersFunctionlesson_5_exit_codes
对应源码 hooks.rs:179-196: match output.status.code() { Some(0) => HookCommandOutcome::Allow { message }, // 成功=允许 Some(2)
tutorials/19_process_and_pipe_communication.py:359
↓ 1 callersFunctionlesson_5_sse_client
把前面学到的全部串起来: 写一个可以处理超时和重试的异步 SSE 客户端。 这就是 mini-claude-code 的 API 客户端骨架。
tutorials/17_async_await_for_sse.py:294
↓ 1 callersFunctionlesson_5_strategy_pattern
对应源码: permissions.rs:4-9 → PermissionMode 枚举 (5 种策略) sandbox.rs → FilesystemIsolationMode (3 种隔离策略) conversation.rs
tutorials/18_design_patterns_for_agents.py:727
↓ 1 callersFunctionlesson_5_unshare
类比: unshare 就像"施放结界" 在动漫里,角色可以施放结界把一块区域与外界隔离。 unshare 就是 Linux 的"施放结界"命令。 用法: unshare --user --mount --pid --fork sh -c "你的命令
tutorials/14a_os_isolation_primer.py:303
↓ 1 callersFunctionlesson_6_containers
类比: Docker 容器就是"全套命名空间 + 文件系统快照" 你可能听过 Docker。Docker 容器本质上就是: 1. 所有命名空间都启用(User + Mount + PID + Network + IPC + UTS) 2. 一个独立的文件系统(镜像
tutorials/14a_os_isolation_primer.py:384
↓ 1 callersFunctionlesson_6_full_demo
把前 5 课的模式全部组合, 构建一个完整的 mini agentic loop。 这就是 mini-claude-code 的骨架! 对应关系: - ApiClient (接口) → conversation.rs:34 - Tool
tutorials/18_design_patterns_for_agents.py:877
← previousnext →701–800 of 1,659, ranked by callers