diff options
Diffstat (limited to 'doc/Design.md')
| -rw-r--r-- | doc/Design.md | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/doc/Design.md b/doc/Design.md index 101a896..31d0247 100644 --- a/doc/Design.md +++ b/doc/Design.md @@ -265,7 +265,7 @@ Ollamaに公開するInternal Toolは次の6群に固定する。個々のOS com {"root":"string","mode":"glob|name|text|regex|tail","query":"string","max_results":100,"tail_lines":100} ``` - `root`はread許可directory/file配下でなければdeny。 -- `tail`はtext file向け。binaryは拒否する。 +- `tail`はtext file向け。binaryは拒否する。判定は先頭4 KiBのみを読み、BOM確認(UTF-8/UTF-16 LE/UTF-16 BE)→BOMなしはUTF-8 strict byte sequence検証で行う。NULバイトのみの判定はUTF-16 textを誤拒否するため使用しない。 - `max_results`にhard upper boundを設け、context爆発を防ぐ。 - `max_results`のhard upper boundは1,000件、`tail_lines`は10,000行とする。 ### 7.2 file_read @@ -279,14 +279,17 @@ Ollamaに公開するInternal Toolは次の6群に固定する。個々のOS com ```json { "path":"string", - "operation":"overwrite|patch|atomic_replace|delete", + "operation":"overwrite|patch|atomic_replace|delete|rename", "content":"string|null", "patch":"string|null", - "expected_sha256":"string|null" + "expected_sha256":"string|null", + "new_path":"string|null" } ``` - overwrite/patch/atomic_replaceはwrite permissionを要求する。 - deleteはdelete permissionを要求する。 +- renameはsource/destination双方にwrite permissionを要求する。destinationが既に存在する場合は拒否する(overwrite不可)。cross-volume renameは不支持でTool failureとして返す。 +- rename transaction: PREPARE(source/destination検査+journal) → APPLY(File.Move) → VERIFY(source不存在/destination存在/hash一致) → COMMIT。crash recoveryはdestination hashがjournal記録と一致する場合のみdestinationからsourceへ戻す。 - `expected_sha256` 指定時はoptimistic concurrency guardとして利用する。 ### 7.4 process_run ```json @@ -379,7 +382,7 @@ AgentSession 1. Fixed System Prompt 2. User System Prompt 3. locale instruction -4. selected Skills +4. selected Skills (name + description一覧のみ、Progressive Disclosure Stage 1) 5. Sandbox capability summary 6. current TaskGraph / current Task 7. previous Summary @@ -829,6 +832,7 @@ errorは内部codeとlocalized messageを分離し、ログ/auditにはcode、MC - `AuditEvent` - `LanguageContext` - `SkillDescriptor` +- `AgentSkill` - `ToolCallRecord` ## 29. 実装レビュー用チェックリスト - [ ] public MCP toolは2個だけか。 |
