Files
deepseek-harness/packages/host/apiproxy/README.zh.md
T

84 lines
29 KiB
Markdown
Raw Normal View History

2026-07-26 05:03:53 +08:00
# @deepseek-ai/dsh-host-apiproxy
[English](README.md) | 荳ュ譁�
謇€譛牙ョ「謌キ遶ッ蜈ア逕ィ逧� API 鄂大�逕ア荳蛾Κ蛻�サ���啜ypeScript API 郤ヲ螳夲シ�src/api/`�御ク堺セ晁オ� Node�悟庄莉取オ剰ァ亥勣蟇シ蜈・�峨€’etch 霓ス菴灘ッケ��src/fetch/`�壼ョソ荳サ萓ァ逧� `toFetchHandler`�御サ・蜿雁ョ「謌キ遶ッ萓ァ逧� `AbstractApiClient` 荳主ケウ蜿ー蟄千アサ�牙柱螳ソ荳サ萓ァ螳樒鴫��src/api-proxy.ts`�啻createApiProxy` 蜉�荳企サ倩ョ、蟇シ蜃コ逧� `ApiProxyService` 鄂大�謠剃サカ�悟�驟咲スョ荳コ `{nativeOpen?, sessionExportCompressionLevel?}`�梧署萓� `ctx.apiProxy`�峨€りッ・蛹�ク肴ウィ蜀御ササ菴戊キッ逕ア�姨TTP 遲芽スス菴楢�陦悟桁陬� `ctx.apiProxy`縲る囂蜿題。檎沿莠、莉倡噪 Web 扈�粋菴堺コ� [`packages/bundle/web-app/cordis.patch.yml`](../../bundle/web-app/cordis.patch.yml)�悟�鮟倩ョ、 Agent�域匱閭ス菴難シ画ィ。蝙矩€画叫螻樔コ� base 扈�粋蛹�クュ逧� [`@deepseek-ai/dsh-agent-default-model`](../../core/agent-default-model/README.md)縲�
2026-07-26 05:03:53 +08:00
## 蜈ア莠ォ Agent 鮟倩ョ、蛟シ��agent-default-model` Settings 蛻�鰍��
`ApiProxyService` 豸郁エケ `ctx.agentDefaultModel`�帛ョ�ク肴戟譛画署萓帶婿�乗ィ。蝙矩�鄂ョ謌� Settings 蛻�鰍縲ょ�莠ォ譛榊苅蝨ィ `agent-default-model` 荳区ウィ蜀� `{provider, model, reasoningEffort?}`�喘ase 扈�粋蛹�噪扈�粋譚。逶ョ譏ッ蠎募アゑシ形settings.yaml` 謚顔畑謌キ騾画叫蜿�蜉�蜈カ荳翫€�
莨夊ッ晄ッ乗ャ。隶ソ髣ョ譌カ驛ス謖我ク臥コァ隗」譫先ィ。蝙矩€画叫�壽悽霑帷ィ句�菴懷�逧�€画叫�悟�谺。譏ッ隸・莨夊ッ晄律蠢嶺クュ譛€譁ー逧� `request/header`�梧怙蜷取弍霑吩クェ鮟倩ョ、蛟シ縲ょキイ扈剰キ題ソ�ク€霓ョ逧�シ夊ッ昜サ手�蟾ア逧�律蠢玲耳蟇シ騾画叫�檎ゥコ逋ス莨夊ッ晏�閭ス隗ょッ溷芦蛻帛サコ荵句錘菫晏ュ倡噪鮟倩ョ、蛟シ縲�
`session.selectModel` 莨壽滑謗・蜿礼噪蛻�困菫晏ュ倅クコ驛ィ鄂イ鮟倩ョ、蛟シ�帶イ。譛牙黒迢ャ逧�€画叫蜉ィ菴懊€ょョ�ュ伜お蟾イ隗」譫千噪 `ModelSelection`�悟桁諡ャ騾る�蝎ィ螳樔ス灘喧逧�サ倩ョ、謗ィ逅�シコ蠎ヲ縲ょョ梧紛蛻�鰍蜀吝�莨壼惠謇€騾画ィ。蝙区イ。譛画耳逅�シコ蠎ヲ譌カ貂�勁蟾イ蟄伜€シ縲ょュ伜お螟ア雍・蜿ェ隶ー譌・蠢暦シ御ク堺シ壽彫髞€莨夊ッ晞€画叫縲よイ。譛芽ョセ鄂ョ謠蝉セ帶婿逧�Κ鄂イ菫晉蕗扈�粋譚。逶ョ�悟�謐「蜿ェ蟇ケ蠖灘燕莨夊ッ晉函謨医€�
Settings 蛻�鰍荳ュ逧� `reasoningEffort` 蝨ィ agent-default-model 謠剃サカ驟咲スョ荳ュ蛻サ諢乗イ。譛牙ッケ蠎泌ュ玲ョオ�嘖eam 謖牙ュ玲ョオ謚顔畑謌キ螻ょ粋蟷カ蛻ー扈�粋譚。逶ョ荵倶ク奇シ悟屏豁、郛コ蟶ュ逧�醗譌�豕戊ヲ�尠蟾イ譛蛾醗�檎サ�粋螻ゆクュ逧�耳逅�シコ蠎ヲ莨壼惠莉・蜷朱€画叫豐。譛画耳逅�シコ蠎ヲ逧�ィ。蝙区慮扈ァ扈ュ蟄伜惠縲よ耳逅�シコ蠎ヲ逧�Κ鄂イ鮟倩ョ、蛟シ螻樔コ取潔讓。蝙玖ァ」譫千噪騾る�蝎ィ profile縲�
蟄伜お逧�€画叫迢ャ遶倶コ守岼蠖墓�蜻伜�邉サ縲るサ倩ョ、蛟シ謖�髄荳榊庄逕ィ逧�署萓帶婿譌カ�悟ョ�サ堺シ壻ス應クコ莨夊ッ晉噪 `current` 騾∝芦 `session.models`�瑚ョゥ騾画叫蝎ィ隸キ豎ら畑謌キ驥肴眠騾画叫�瑚€御ク肴弍髱咎サ倬€臥畑蜈カ莉匁ィ。蝙九€ょ渚霑�擂�碁€る�蝎ィ荵溷庄莉・譛榊苅蜈カ逶ョ蠖穂クュ譛ェ蜈ャ蟶�噪讓。蝙九€�
2026-07-26 05:03:53 +08:00
## 郤ヲ螳壼アゑシ�/api`��
2026-07-26 05:03:53 +08:00
蜊剰ョョ豸域�扈��荳€荳ェ蝗幄ア。髯仙庄霎ィ隸�#蜷茨シ壼書襍キ譁ケ テ� 隸キ豎ゑシ丞桃蠎費シ御ク守黄逅�€夐%隗」閠ヲ縲ょ屁遘肴カ域�蛻�悪譏ッ `ClientRequest`��OST `/api/<method>` 逧�ッキ豎ゆス難シ峨€~ServerResponse`�郁ッ・ POST 逧�桃蠎比ス難シ峨€~ServerRequest`��SE 蟶ァ�牙柱 `ClientResponse`��OST `/api/respond` 逧�ッキ豎ゆス難シ峨€ょ桃蠎泌ァ狗サ亥屓譏セ蟇ケ蠎碑ッキ豎ら噪 `rpcId`�檎サ昜ク咲ュセ蜿第眠蛟シ縲よ婿豕慕噪蜿よ焚荳手ソ泌屓蛟シ扈捺桷蜿ェ蟄伜惠莠朱「�沺謗・蜿」遲セ蜷搾シ�SessionsApi`縲~HostApi`縲~EventsApi`�我クュ�嫣RpcMethodMap` 豕ィ蜀梧婿豕包シ悟�莉匁園譛我ス咲スョ蝮�€夊ソ� `RequestPayload<K>`�汁ResponseValue<K>` 豢セ逕溘€�od schema 莉・ `satisfies z.ZodType<Wire<T>>` 髞壼ョ夂アサ蝙具シ悟ケカ蛻�ク、螻りァ」譫撰シ壼�隗」譫蝉ソ。蟆�シ悟�隗」譫蝉ク壼苅霓ス闕キ�碁囂蜷取潔譁ケ豕募�蜿代€ゆク壼苅髞呵ッッ逕ア `RpcResult` 逧�漠隸ッ蛻�髪謇ソ霓ス��RpcErrorDetailsMap` 蟆�溜髞呵ッッ遐�寔蜷茨シ会シ姨TTP 迥カ諤∝宵陦ィ霎セ霓ス菴灘アらサ捺棡縲よッ丈クェ `/api` POST 驛ス蠢�。サ螢ー譏� `application/json` 蟐剃ス鍋アサ蝙銀€披€泌凄蛻吝惠蛻�書蜑榊叉莉・ 415 諡堤サ晢シ悟屏豁、霍ィ遶吶€檎ョ€蜊戊ッキ豎ゅ€搾シ域オ剰ァ亥勣荳咲サ� CORS 鬚�」€蟆ア莨壼書蜃コ�画ーク霑懈裏豕慕峇逶ョ謇ァ陦梧怏蜑ッ菴懃畑逧�婿豕輔€�
2026-07-26 05:03:53 +08:00
蛻�アゆク主刻隶ョ蜀ウ遲冶ョー蠖募惠 [GUI 蛻�アゆク� RPC 蜊剰ョョ RFC](../../../.agents/notes/implemented/architecture/2026-07-19-gui-layering-and-rpc-protocol.md)荳ュ�帶オ剰ァ亥勣萓ァ豸郁エケ譫カ譫�ョー蠖募惠 [Web 螳「謌キ遶ッ譫カ譫� RFC](../../../.agents/notes/implemented/architecture/2026-07-19-gui-web-client-architecture.md)荳ュ縲�
鬥紋クェ蝗樒ュ碑ョ、鬚�セ�、�炊隸キ豎ゆケ句燕�檎ウサ扈滉シ壼ッケ辣ァ隸・隸キ豎よ�。鬪碁琉鬚伜桃蠎斐€ょ、夐€蛾「倡噪蝗樒ュ秘。ケ蜿ッ莉・蜷梧慮謳コ蟶ヲ `selected` 荳ュ逧�ッキ豎る€蛾。ケ譬�ュセ荳朱撼遨コ `custom` 譁�悽�帛黒騾蛾「倡噪蝗樒ュ秘。ケ蠢�。サ莠碁€我ク€縲よ��ュセ驥榊、阪€∵��ュセ譛ェ遏・縲(d 荳榊源驟阪€∵音谺。荳榊ョ梧紛莉・蜿願�螳壻ケ画枚譛ャ荳コ遨コ驛ス莨壻サ・ `bad-response` 諡堤サ昴€�
`session.history` 莨夊ッサ蜿門キイ髯�刈 Session 逧��蟄倡憾諤�シ梧�騾夊ソ�戟荵�喧譽€譟・蜀キ譌・蠢暦シ瑚€御ク堺シ壽△螟肴�蜿大ク� agent�檎┯蜷取潔霑ス蜉�譚・貅千噪豸域�霎ケ逡悟�鬘オ�啻maxMessages` 扈溯ョ。莉・霑ス蜉�譁ケ蠑剰ソ帛� surface 逧� `user/message` 蜥� `assistant/message` 莠倶サカ�悟屏豁、莉�セ帶ィ。蝙倶スソ逕ィ逧�崛謐「蜑ッ譛ャ荳榊頃逕ィ驟埼「昴€よッ丈ク€鬘オ莉肴弍荳€谿オ霑樒サュ逧�次蟋倶コ倶サカ蛹コ髣エ�御サ手€瑚ョゥ蜴狗シゥ��ompaction�臥噪莉�律蠢� `compact/summary` 隶ー蠖穂ク主シ慕畑螳�噪譖ソ謐「逡吝惠蜷御ク€鬘オ縲�
`session.history` 逧�ーセ鬘オ�井ク榊クヲ `beforeSeq`�蛾「晏、匁声蟶ヲ荳€荳ェ蜿ッ騾臥噪 `projections` 蝮冷€披€覗ctx.sessionProjections`��@deepseek-ai/dsh-session-projection`�我ク頑ッ丈クェ蟾イ豕ィ蜀悟黒蜈�噪豌エ菴咲コソ蠢ォ辣ァ�形asOfSeq` = 霑吩コ帛€シ蜈ア蜷悟渚譏�蛻ー逧�怙蜷惹ク€荳ェ莠倶サカ seq�育ゥコ譌・蠢嶺クコ `-1`�峨€らス大�霑倩ョ「髦�ウィ蜀瑚。ィ逧�序譖エ豬�シ御クコ豈丈クェ迥カ諤∝書逕溷序蛹也噪蜊募�逕滓�荳€荳ェ `session/projection` mux 蟶ァ��{sessionId, key, value, seq}`窶披€泌ョ樊慮謗ィ騾∫憾諤�シ檎サ昜ク榊�譌・蠢暦シ帛ョ「謌キ遶ッ謖� seq 鬮倩€��扈エ謚、荳€荳ェ謖我シ夊ッ晉噪騾夂畑蛟シ莉難シ峨€りスス菴謎ク肴戟譛我ササ菴暮「�沺遏・隸�シ域ッ丈クェ蛟シ蝨ィ豕ィ蜀瑚。ィ蜀�Κ蟾イ霑��蜊募�閾ェ蟾ア逧� schema�帛刻隶ョ schema 蟇ケ `values`/`value` 菫晄戟螳ス譚セ�会シ嬪oadOlder 鬘オ豌ク荳肴声蟶ヲ隸・蝮暦シ梧悴陬�ウィ蜀瑚。ィ逧�サ�粋蛻吩ク、荳ェ髱「驛ス荳肴署萓帙€�
莨夊ッ晄律蠢怜ッシ蜃コ譏ッ螳ソ荳サ萓ァ逧�ク玖スス髱「�御ク肴弍 RPC�啻GET /api/session.export?sessionId=窶ヲ&includeDescendants=true` 豬∝シ剰ソ泌屓荳€荳ェ ZIP�悟�荳ュ豈丈クェ譁�サカ驛ス譏ッ莨夊ッ晏ュ伜お蟾・莉カ逧�€仙ュ怜次譁�シ域戟荵�喧蜷守ォッ逧� `readRaw`窶披€疲潔迚ゥ逅�シ也�∬ァ」遐∫噪遑ョ蛻�戟荵�喧蟄苓鰍�檎サ晞撼莉手ァ」譫仙錘莠倶サカ驥榊サコ�会シ梧�ケ莨夊ッ晄叛蝨ィ蜈カ蜴溷ァ句渕遑€譁�サカ蜷堺ク具シ梧ッ丈クェ蟄蝉サ」逅�錘莉」謾セ蝨ィ `subagents/<id>/` 荳具シ梧ッ丈クェ陲ォ莉サ菴募桁蜷ォ逧�律蠢怜シ慕畑逧�崟迚�叛蝨ィ `media/<attachmentId>.<ext>` 荳具シ井サ朱刋莉カ蟄伜お隸サ蜿門ケカ譬。鬪鯉シ帛�莠ォ蝗セ迚�宵蜃コ邇ー荳€谺。�峨€よッ丈クェ螳樊慮譬ケ莨夊ッ晄�蜷惹サ」驛ス莨壼惠隸サ蜿門次蟋句キ・莉カ蜑咲ォ句叉騾夊ソ�揀螽∫噪 `SessionStore.flush` 謖∽ケ�€ァ螻城囿�帛�莨夊ッ晄イ。譛蛾怙隕� flush 逧��蟄伜キ・菴懊€ょ視郛ゥ蝨ィ螳ソ荳サ萓ァ菴ソ逕ィ fflate 豬∝シ� Zip API 蜥悟キイ鬪瑚ッ∫噪 `sessionExportCompressionLevel` 0窶�9�磯サ倩ョ、 6�会シ御スソ驛ィ鄂イ蜿ッ莉・蝨ィ CPU�丞サカ霑滉ク主ス呈。」螟ァ蟆丈ケ矩龍蜿冶��帛桃蠎碑セケ逕滓�霎ケ蛻�摎蜀吝��悟ョソ荳サ莉惹ク肴滑謨エ荳ェ蠖呈。」謾セ霑帛黒荳ェ郛灘�蛹コ縲ょ桃蠎秘弌蛻苓セセ蛻ー 64 KiB 蟄苓鰍鬮俶ーエ菴榊錘�檎函莠ァ莨夂ュ牙セ� Consumer pull 諱「螟肴ュ」螳ケ驥擾シ嫻flate 逧�酔豁・蝗櫁ー�怙螟壼宵莨夊ョゥ隸・逡碁剞螟壼�荳€谺。譛臥阜霎灘� push 逧�セ灘�縲りッキ豎ゆクュ豁「謌門桃蠎� body 蜿匁カ井シ壼●豁「陦€郛倅ク主キ・莉カ蟾・菴懊€∫サ域ュ「豢サ霍�視郛ゥ蝎ィ�悟ケカ扈ァ扈ュ謖牙叙豸井シ�謦ュ�瑚€御ク堺シ壼序謌� HTTP 500縲ょョ�ヲ∵アょ酔譌カ謖りスス謖∽ケ�喧縲《ession-query 荳朱刋莉カ譛榊苅�壻ササ荳€郛コ螟ア蠎皮ュ� 500�梧戟荵�喧蜷守ォッ荳肴署萓帶ッ丈シ夊ッ晏次蟋句キ・莉カ譌カ蠎皮ュ� 501�梧�ケ莨夊ッ晉シコ螟ア譌カ蠎皮ュ� 404�悟錘莉」郛コ蟆大ュ伜お蟾・莉カ謌門シ慕畑逧�崟迚�裏豕戊ッサ蜿門�謨エ荳ェ豬∝、ア雍・��ail-loud�檎サ昜ク埼撕鮟伜ー大ッシ蜃コ�峨€らォッ轤ケ逕ア莨�霎灘アよ撃霓ス�形ApiProxy.downloads.sessionLog` 螳樒鴫螳�€�
莨夊ッ晄��「倅ク主�莉匁園譛蛾「�沺荳€譬キ謳ュ荵倩ソ吝ッケ騾夂畑謚募スア譛コ蛻カ窶披€泌紙蜿イ蟆セ鬘オ逧� `projections` 蝮怜、門刈 `title` 髞ョ荳狗噪 `session/projection` 蟶ァ縲よ��「倅ク堺シ壼刈蜈・ `session.list`�帛�莨夊ッ晏惠蜈カ荳ュ莉榊宵譛牙�謨ー謐ョ�檎峩蛻ー謇灘シ€謌匁△螟肴桃菴憺刋蜉�蜈カ譌・蠢励€Asession.rename` 謗・蜿礼畑謌キ譏セ蠑乗��「假シ亥�莨夊ッ晏�諱「螟搾シ会シ悟ァ疲汚扈� `ctx.sessionTitle.rename`窶披€碑「ォ謗・蜿礼噪 `session/title` 莠倶サカ蟆���「倬忠菴上€∽ク榊�陲ォ閾ェ蜉ィ逕滓�隕�尠窶披€泌ケカ霑泌屓隗�激蛹門錘逧���「伜所蜈カ莠倶サカ seq�瑚ョゥ client 蝨ィ謗ィ騾∝クァ蛻ー霎セ蜑榊ーア扈鍋ョ苓�蟾ア逧� `title` 謚募スア譬シ�幄ァ�激蛹門錘荳コ遨コ逧���「倩ソ泌屓 `title-invalid`縲�
2026-07-26 05:03:53 +08:00
2026-08-09 15:27:21 +08:00
`session.fork` 蟆�庄騾我コ倶サカ髞夂せ譏�蟆�芦隸・髞夂せ螟��蜈カ蜷守噪鬥紋クェ `turn/end`�御スソ豸域�謫堺ス懷庄蛹�性隸・豸域�謇€蝨ィ逧�ョ梧紛霓ョ谺。縲る爆轤ケ逵∫払謌冶カ�ソ�忰蟆セ譌カ�碁€画叫譛€蜷惹ク€荳ェ蟾イ螳梧�霓ョ谺。�幄凶髞夂せ蟾イ蝨ィ譌・蠢嶺クュ�瑚€悟�謇€蝨ィ霓ョ谺。莉榊シ€謾セ�悟�霑泌屓 `fork-unavailable`�御ク堺シ壼髄霎�掠菴咲スョ陬∝岡縲ょ書蟶�錘逧�ュ蝉シ夊ッ昜シ壼�扈ァ謇ソ貅蝉シ夊ッ晉噪遘榊ュ仙紙蜿イ縲…wd縲∵律蠢嶺クュ譛€譁ー逧� `ModelSelection` 蜿願ーア邉サ�悟�蜉�蜈・貅� Workspace縲ょヲよ棡髯�刈蛻ー Workspace 螟ア雍・�形workspace-attach-failed` 莨壽声蟶ヲ蟾イ蜿大ク�噪蟄蝉シ夊ッ� id�御セ帛ョ「謌キ遶ッ蟇ケ雍ヲ縲�SessionStore fork 蜀ウ遲望(../../../.agents/notes/implemented/feature/2026-06-30-session-store-fork-api.md)隶ー蠖穂コ�クコ菴暮爆轤ケ隕∵丐蟆�芦隸・ `turn/end`縲�
2026-08-09 15:27:21 +08:00
莨夊ッ晄ィ。蝙矩€画叫螻樔コ惹シ夊ッ晞「�沺郤ヲ螳壹€Asession.models` 蟆�ス灘燕 `ModelSelection` 荳取潔謠蝉セ帶婿蛻�サ�噪蟒コ隶ョ諤ァ讓。蝙九€∫イセ遑ョ讓。蝙狗噪謗ィ逅�シ�easoning�牙�謨ー謐ョ蜥碁€先署萓帶婿譟・隸「螟ア雍・隶ー蠖募�蠑€霑泌屓縲りッ・騾画叫蜿ッ閭ス荳榊惠霑吩コ帛�扈�クュ�御ケ溽サ昜ク堺シ壻ス應クコ蜷域�陦梧ウィ蜈・�帛ョ「謌キ遶ッ蜿ッ莉・謠千、コ逕ィ謌キ菴懷�蜿ヲ荳€鬘ケ騾画叫�瑚€梧裏髴€謚顔岼蠖募序謌占キッ逕ア逋ス蜷榊黒縲Asession.selectModel` 譬。鬪檎罰騾る�蝎ィ謖∵怏逧�庄騾画耳逅�シコ蠎ヲ�悟ケカ謖�ョ壻ク区ャ。扈�」�署遉コ隸肴慮菴ソ逕ィ逧�ョ梧紛騾画叫縲ら岼蠖墓�蜻伜�邉サ荳肴桷謌先�。鬪鯉シ夐€る�蝎ィ蜿ッ莉・隗」譫先悴蛻怜�逧�ィ。蝙具シ瑚€御ク榊庄逕ィ逧�署萓帶婿謌紋ク榊女謾ッ謖∫噪謗ィ逅�シコ蠎ヲ莨夊ソ泌屓 `model-unavailable`縲Asession.models` 霑倅シ壽冠蜻� `routable`�悟叉蠖灘燕譏ッ蜷ヲ譛蛾€る�蝎ィ荳コ謇€騾画署萓帶婿謠蝉セ帶恪蜉。縲りッ・蛟シ蛻サ諢丈ク堺サ主�扈�耳蟇シ�悟屏荳コ騾る�蝎ィ蜿ッ莉・譛榊苅譛ェ蜈ャ蟶�噪讓。蝙九€Asession.prompt` 莨壻セ晄紺蜷御ク€莠句ョ橸シ悟惠蠑€蜷ッ霓ョ谺。荵句燕莉・ `model-unavailable` 諡堤サ晢シ帛ョ「謌キ遶ッ遖∫畑 composer 蜿ェ譏ッ謠千、コ諤ァ隶セ隶。�瑚ソ吩クェ譁ケ豕募ァ狗サ亥庄陲ォ隹�畑縲�
`session.prompt` 蜥� `subagent.prompt` 謗・蜿怜庄騾臥噪隸キ豎よ悽蝨ー `clientTimeZone` 譚・貅蝉ソ。諱ッ縲り凶謠蝉セ幄ッ・蛟シ�粂ost 莨壼惠霑帛� Agent 蜑肴�。鬪� `UTC` 謌� IANA Area/Location 蟷カ蟆��隗�激蛹厄シ帶裏謨郁セ灘�莉・ `invalid-time-zone` 諡堤サ晢シ瑚ァ�激蛟シ蛻吩ク� `rpcId` 荳€襍キ隶ー蠖募惠霑呎擅遑ョ蛻�噪 `user-rpc` 豸域�荳翫€りッ・蛟シ荳榊ア樔コ� Session縲∬ソ樊磁縲…reate縲〉esume 謌� fork 迥カ諤�シ幃撼豬剰ァ亥勣隹�畑譁ケ蜿ッ莉・逵∫払螳�€�
蠕�、�炊逧� queued 霎灘�螻樔コ主ョ樊慮謗ァ蛻カ蟷ウ髱「郤ヲ螳夲シ瑚€碁撼蟇ケ隸晏紙蜿イ縲らス大�譬ケ謐ョ謖∽ケ� `agent/inbox/spliced` 蜿俶峩豢セ逕溷ョ梧紛逧� `next-turn` 髦溷��悟ケカ蝨ィ豈乗ャ。蜿俶峩蜷主所驥崎ソ樊慮蟷ソ謦ュ譚�ィ� `session/queue` 蠢ォ辣ァ�帛セ�、�炊逧� `next-step` steering�井クュ騾泌シ募ッシ�我ク崎ソ帛�豁、 Web 謚募スア縲ょ惠 `next-step` 蜀�シ檎畑謌キ譚・貅千噪豸域�謳コ蟶ヲ `steering` placement�瑚€梧ウィ蜈・荳贋ク区枚�亥ョ。謇ケ騾夂衍縲∽ササ蜉。螳梧�縲�刋蜉�蠢ォ辣ァ�画声蟶ヲ `context`�碁「�叙蜑堺ク榊ッケ螟門争邇ー縲る擇蜷大黒譚。豸域�逧� `agent/inbox/inserted`縲~claimed` 荳� `discarded` 騾夂衍莉堺セ帷函蜻ス蜻ィ譛溯ァょッ滓婿菴ソ逕ィ�御ス�ク咲畑莠取桷蟒コ髦溷�隗�崟縲Asession.updateQueue` 騾夊ソ� `MessageId` 蟇サ蝮€蜊穂クェ鬘ケ�帷シ冶セ大柱遘サ髯、扈丞キイ謖りスス Agent 逧� `Inbox.splice()` 菫ョ謾ケ髦溷�縲Dlaim 逧�コッ蛻�髯、 splice 莨壼惠 pre-step 蜃��蜑崎オ「蠕礼ォ樊€�シ悟屏豁、荵句錘逧�桃菴懆ソ泌屓 `queue-item-not-found`縲Asession.cancel` 莉�クュ豁「豢サ蜉ィ霓ョ谺。蟷カ菫晉蕗蠕�、�炊 inbox 蟾・菴懶シ帛叙豸郁セセ蛻ー螳悟�蛛懃ィウ荳皮サ捺據荳ュ逧�スョ谺。螳梧� flush 蜷趣シ窟gentLoop 謖� FIFO 鬘コ蠎剰ョ、鬚�ク倶ク€譚。蜿ッ蜚、驢呈カ域��梧オ剰ァ亥勣扈昜ク埼㍾蜿第�謠仙合螳�€る弌蛻玲桃菴懃サ昜ク肴△螟榊�莨夊ッ晢シ悟ョ「謌キ遶ッ荵溽サ昜ク肴�ケ謐ョ霓ョ谺。謌也憾諤∽コ倶サカ謗ィ譁ュ譟宣。ケ蟾イ騾€蜃コ髦溷�縲�
2026-07-26 05:03:53 +08:00
蜷主床莉サ蜉。豐ソ逕ィ蜷御ク€遘榊ョ樊慮謗ィ騾∝ァソ諤√€ょス鍋サ�粋荳ュ譛� `ctx.tasks` 譌カ�檎ス大�隶「髦�ョ�噪蜿俶峩隶「髦�シ悟ケカ蝨ィ豕ィ蜀瑚。ィ豈丈ク€谺。謾ケ蜿俶汾荳ェ莨夊ッ晏庄隗∝�螳ケ逧�署莠、蜷寂€披€疲ウィ蜀後€∬スャ蜈・ stopping縲∫サ鍋ョ暦シ御サ・蜿� owner 髞€豈∵慮逧�ァサ髯、窶披€泌ケソ謦ュ荳€莉ス螳梧紛逧� `session/tasks` 蠢ォ辣ァ�悟嘗螟紋クコ豈丈クェ蟾イ扈乗怏莉サ蜉。逧�シ夊ッ晏書騾∬ョ「髦� baseline�域イ。譛� baseline 蜊ウ陦ィ遉コ遨コ髮�シ帶滑髮�粋貂�ゥコ逧�ぅ谺。蜿俶峩莉咲┯蜿鷹€� `[]`�峨€ょクヲ owner 逧�序譖エ騾夊ソ�ぅ荳ェ遑ョ蛻�噪 `Agent` 隸サ蜿厄シ悟屏豁、謗ィ騾∝惠蜈カ scope 諡�勁譛滄龍萓晉┯豁」遑ョ�嫦aseline 隸サ `ctx.agents.get(sessionId)`�悟ッケ豐。譛画エサ菴� Agent 逧�シ夊ッ晏宵蠕怜芦譌�荳サ莉サ蜉。�御ク皮サ昜ク肴△螟榊�莨夊ッ昴€よ裏荳サ蜿俶峩蜷第ッ丈ク€荳ェ蟾イ隶「髦�シ夊ッ晄援蜃コ�悟屏荳コ譌�荳サ莉サ蜉。蟇ケ謇€譛芽ー�畑譁ケ蜿ッ隗√€らコソ霍ッ荳顔噪 `TaskView` 荳「蠑� `ownerSession`縲~reported` 蜥� `outputLimitBytes`�夂ャャ荳€荳ェ逕ア蟶ァ閾ェ霄ォ逧� `sessionId` 謳コ蟶ヲ�悟嘗螟紋ク、荳ェ蛻�悪譏ッ蜀�Κ騾夂衍菴榊柱讓。蝙句争邇ー遲也払縲よイ。譛芽ッ・豕ィ蜀瑚。ィ逧�サ�粋荳榊書蜃コ霑咏アサ蟶ァ縲�
Workspace 蛻苓。ィ荳� Session 蛻苓。ィ譏ッ逶ク莠堤峡遶狗噪驥崎ソ槫渕郤ソ縲Aworkspace.create({ path })` 莨壽磁郤ウ蟾イ譛臥噪隗�激逶ョ蠖包シ悟ケカ蜈∬ョク逕ア basename 豢セ逕溽噪譬�「倬㍾螟阪€Aworkspace.insertBefore({ workspaceId, beforeWorkspaceId? })` 謠蝉コ、荳€谺。豕ィ蜀瑚。ィ鬘コ蠎冗ァサ蜉ィ蟷カ蠎皮ュ泌ョ梧紛鬘コ蠎擾シ帛黒郤ッ驥肴賜蠎丈シ夐€夊ソ� `host/workspace-order-changed` 謗ィ騾∝酔荳€莉ス螳梧紛鬘コ蠎擾シ瑚€梧悴遏・譚・貅先�髞夂せ霑泌屓 `workspace-not-found`縲Aworkspace.delete` 蜿ェ遘サ髯、 Workspace 豕ィ蜀瑚ョー蠖包シ形session.create` 謗・蜿怜庄騾臥噪鬚��驟� Session id�形host/workspace-changed`縲~host/workspace-removed` 荳� `host/session-added` 蛻吩サ・莉サ諢丞芦霎セ鬘コ蠎乗声蟶ヲ蟾イ謠蝉コ、逧�「樣㍼縲Aworkspace.archiveSession` 蜷第ウィ蜀瑚。ィ郤ァ蜈ィ螻€蠖呈。」髮�粋豺サ蜉�荳€荳ェ莨夊ッ晢シ悟ケカ蠎皮ュ泌ョ梧紛逧�峩譁ー蜷朱寔蜷茨シ嫣workspace.list` 謳コ蟶ヲ隸・髮�粋菴應クコ驥崎ソ槫渕郤ソ�形host/archived-sessions-changed` 蝨ィ豈乗ャ。謖∽ケ�序譖エ蜷取耳騾∝ョ梧紛蠢ォ辣ァ縲ょス呈。」蜿ェ謚贋シ夊ッ昜サ主推蛻�サ�ァ�崟荳ュ髫占酪�御ク崎ァヲ遒ー蜈カ譌・蠢怜柱 workspace 隶ー雍ヲ�帶里髱槫ョ樊慮荵滓悴謖∽ケ�喧逧�シ夊ッ昜サ・ `session-not-found` 螟ア雍・縲ょ唖髯、豕ィ蜀瑚ョー蠖穂シ壻ソ晉蕗逶ョ蠖募柱莨夊ッ晄律蠢暦シ帷嶌蜈ウ Session 莉咲蕗蝨ィ `session.list` 荳ュ�悟ケカ霑帛� Ungrouped縲ASessionSummary.blank` 荳� `host/session-added` 蟶ァ謳コ蟶ヲ豢セ逕溽噪髮カ莠倶サカ菴搾シ壼ョ「謌キ遶ッ髫占酪遨コ逋ス莨夊ッ晏ケカ謖� workspace 螟咲畑螳�サャ�悟惠鬥紋クェ `host/session-status(running:true)` 譌カ鄙サ霓ャ blank�悟ケカ莉・ `session.list` 菴應クコ驥崎ソ樊揀螽�シ帛�莨夊ッ晄遭隕∵ーク霑應ク肴弍遨コ逋ス�壽Σ諤ァ謖∽ケ�喧隶ゥ莉取悴霑ス蜉�霑�コ倶サカ逧�シ夊ッ晄�ケ譛ャ荳榊�邇ー蝨ィ `list()` 荳ュ縲�
`session.search` 譏ッ莉・ `session.list` 謇€蛻嶺シ夊ッ昜クコ闌�峩逧�怏逡悟�螳ケ謳懃エ「謚募スア縲らス大�蜷大庄騾臥噪 `ctx.sessionQuery` 譛榊苅隸キ豎ょ�螻€謗貞コ丞錘逧�ス灘燕蜀�ョケ隗�崟荳ュ逧� user縲∥ssistant 蜥� steering 蛹ケ驟埼。ケ�悟ケカ謖∫サュ豸郁エケ隸・扈捺棡豬�シ檎峩蛻ー闔キ蠕苓�螟� 20 荳ェ蜿ッ隗∽シ夊ッ晢シ峻nippet 蟇ケ蜿贋ク€荳ェ蜑咲椽鬘ケ�幄ソ泌屓蜑堺サ堺シ壻セ晄紺莉主�陦ィ謗ィ蟇シ逧�肢譚�寔蜷磯㍾譁ー譬。鬪梧ッ丈クェ蜻ス荳ュ縲よ署萓帶婿蛻�。オ蛻晏ァ玖ッキ豎� 20 荳ェ蜻ス荳ュ�帛ヲよ棡隨ャ荳€鬘オ隸キ豎ょ屏霑吩ク€荳企剞陲ォ諡堤サ晢シ檎ス大�莨壻セ晄ャ。謗「豬� 10縲�5縲�2縲�1�悟ケカ蝨ィ扈ュ莨�蜥碁刪譌ァ荳紋サ」驥榊星荳ュ豐ソ逕ィ謗「豬区園蠕礼噪鬘オ髱「螟ァ蟆上€りソ泌屓逧� snippet 譛€螟壼桁蜷ォ 240 荳ェ Unicode 遐∫せ�悟桃蠎� schema 蛻吩シ壼惠豈丈クェ螳「謌キ遶ッ霎ケ逡檎峡遶句シコ蛻カ謇ァ陦瑚ッ・荳企剞縲ょー�肢譚�寔蜷井ソ晉蕗蝨ィ螳ソ荳サ蜀�ュ倅クュ�悟庄蝨ィ荳榊炎蠑ア蜿ッ隗∵€ァ謌匁賜蠎冗噪蜑肴署荳矩∩蠑€譛画譜螟ァ蝙玖ッュ譁吝コ鍋噪 SQLite 蜿倬㍼荳企剞縲�
髯域立逧�サュ莨�莨壻ク「蠑�ッ・謠蝉セ帶婿蟆晁ッ穂クュ逧�園譛蛾Κ蛻�サ捺棡縲∝悉驥肴擅逶ョ蜥梧クク譬�シ檎┯蜷惹セ晄紺譛€蛻昜サ主�陦ィ謗ィ蟇シ逧�庄隗∵€ァ蠢ォ辣ァ莉守ャャ荳€鬘オ驥肴眠蠑€蟋具シ御ス�ク堺シ壻ク「蠑�爾豬区園蠕礼噪謠蝉セ帶婿鬘オ髱「螟ァ蟆上€ゆク企剞謗「豬倶ク朱刪譌ァ驥崎ッ募�逕ィ譛€螟� 100 谺。謠蝉セ帶婿隹�畑逧�剞蛻カ�亥屏豁、譛€螟壽」€譟・ 2,000 荳ェ蜻ス荳ュ�会シ帛ヲよ棡譟宣。オ蜻ス荳ュ謨ー雜�ソ��隸キ豎ら噪荳企剞縲∫サュ莨�貂ク譬�㍾螟搾シ梧�逕ィ蟆ス隸・隹�畑鬚�ョ怜錘扈捺棡豬∽サ肴悴閠怜ース�碁�莨夂峩謗・霑泌屓 `internal` 荳壼苅髞呵ッッ�御ク崎ソ泌屓驛ィ蛻�サ捺棡縲りスス菴楢ッキ豎ゆソ。蜿キ蜿ッ蜿匁カ域戟荵�喧蛻苓。ィ譫壻クセ縲∝�莨夊ッ晄遭隕∵噺髮�柱豈丈ク€谺。謳懃エ「隹�畑�帛叉菴ソ蜷梧慮謾カ蛻ー荳企剞諡堤サ晄�髯域立諡堤サ晢シ御ケ滉サ・蜿匁カ井クコ蜃�€るΚ鄂イ闍・譛ェ謖りスス隸・譛榊苅�梧�邏「蠑包シ乗衍隸「謨�囿譌�豕墓△螟搾シ御ケ滉シ夊ソ泌屓 `internal` 荳壼苅髞呵ッッ�御サ・萓ソ螳「謌キ遶ッ菫晉蕗莉�渕莠主�謨ー謐ョ逧�源驟埼。ケ縲�
逶ョ蠖暮€画叫蟋疲汚扈咏サ�粋逧� `ctx.directoryPicker` 蜷守ォッ��逶ョ蠖暮€画叫 seam](../directory-picker/README.md)�会シ幄ー�畑扈�粋閭ス蜉� kind 荵句、也噪譁ケ豕穂シ壻サ・ `directory-picker-unavailable` 螟ア雍・�亥ョ「謌キ遶ッ荳埼怙隕∝ケソ謦ュ窶披€皮サ�粋逧�€画叫蝎ィ蛹��蟾ア逧� client half 貂イ譟灘源驟咲噪莠、莠抵シ峨€ょ惠 `native` 荳具シ形host.pickDirectory` 謇灘シ€荳€荳ェ蜴溽函騾画叫蝎ィ蟷カ霑泌屓騾我クュ霍ッ蠕�シ亥叙豸井クコ `null`�会シ幄ッ・譁ケ豕暮怙遲牙セ�畑謌キ螳梧�謫堺ス懶シ御ク堺スソ逕ィ鮟倩ョ、逧� 30 遘剃ク€蜈�ー�畑雜�慮�瑚€瑚ー�畑譁ケ荳手ソ樊磁逧�クュ豁「莉堺シ壻シ�謦ュ閾ウ蜴溽函霑帷ィ九€ょ惠 `browse` 荳具シ形host.listDirectory` 霑泌屓荳€荳ェ謖牙錐遘ー謗貞コ冗噪逶ョ蠖募アらコァ�梧声蟶ヲ髱「蛹�ア醍・門�體セ縲~home` 髞夂せ荳主ョソ荳サ蛻、螳夂噪 `hidden` 譬�ソ暦シ井ク榊クヲ霍ッ蠕�叉螳カ逶ョ蠖包シ会シ形host.createDirectory` 蛻帛サコ荳€荳ェ扈乗�。鬪檎噪蟄先ョオ�帛錘遶ッ逧�アサ蝙句喧螟ア雍・ 1:1 譏�蟆�クコ `directory-unreadable`�汁directory-exists`�汁directory-create-failed` 髞呵ッッ遐√€よオ剰ァ亥勣霓ス菴鍋噪蜑咲シ€郤ァ菫。莉サ譬��擾シ�sh-client-connection�牙ワ隕�尠蜈カ莉匁園譛� `/api` 隸キ豎ゆク€譬キ隕�尠荳願ソー蜈ィ驛ィ譁ケ豕輔€�
`host.openPath` 莨夂畑謫堺ス懃ウサ扈溽噪鮟倩ョ、蠎皮畑謇灘シ€荳€荳ェ譁�サカ邉サ扈溯キッ蠕�シ�acOS 荳コ `open`�係indows 荳コ `Invoke-Item`�梧。碁擇 Linux 荳コ `xdg-open`�峨€ょッケ莠� `.html`縲~.htm`縲~.xhtml` 荳� `.svg`�稽acOS 蜥梧。碁擇 Linux 莨壻シ伜�菴ソ逕ィ閭ス螟溽。ョ螳夂噪鮟倩ョ、豬剰ァ亥勣�帶裏豕慕。ョ螳壽慮蝗樣€€蛻ー荳願ソー蠎皮畑莠、謗・縲8SL 莨夐€夊ソ� `wslpath -w` 霓ャ謐「豈丈クェ Linux 霍ッ蠕�シ悟ケカ蟆�園蠕� Windows/UNC 霍ッ蠕�コ、扈� Windows `Invoke-Item`�梧オ剰ァ亥勣蜿ッ貂イ譟鍋噪譁�。」荵滉ク堺セ句、厄シ瑚€碁撼蛛�ョ壼ュ伜惠 Linux 譯碁擇譁�サカ蜈ウ閨斐€Ahost.describe.canOpenPath` 莨壼ョ」蜻願ソ呎ャ。莠、謗・閭ス蜷ヲ謚オ霎セ逕ィ謌キ蜿ッ隗∫噪譯碁擇�夂ス大�譏セ蠑城�鄂ョ逧� `nativeOpen` 莨伜��梧ウィ蜈・逧� opener 謖牙ョ壻ケ牙庄逕ィ�悟凄蛻吝ケウ蜿ー譽€豬区磁蜿� macOS縲仝indows縲仝SL 謌門クヲ display 逧� Linux�悟ケカ諡堤サ� headless�丞ョケ蝎ィ Linux縲よオ剰ァ亥勣霓ス菴灘ッケ蜈カ譁ス蜉�荳� `host.pickDirectory` 逶ク蜷檎噪蝗樒識縲∝酔貅宣剞蛻カ�帛ョ「謌キ遶ッ莨夂サ�粋霑吩ク、荳ェ莠句ョ槫錘蜀榊争邇ー蜴溽函謫堺ス懊€�
`agentPreset.list` 鬚�沺蜷第オ剰ァ亥勣證エ髴イ驛ィ鄂イ逧� preset 蜷榊黒�御スソ蜈カ蝨ィ蠑€蜷ッ莨夊ッ晄慮閭ス螟滓署萓幃€画叫�帶ッ丈ク€陦梧声蟶ヲ螳�噪 `trust`��user` preset 逧�揀髯先�螂ス遲我コ主ョ�園蠑慕畑逧�薯莉カ�峨€∝ョ�弍蜷ヲ荳コ蠖灘燕鮟倩ョ、蛟シ�御サ・蜿岩€披€泌ス楢ッ・ preset 譌�豕慕サ�」�シ夊ッ晄慮窶披€比ク€譚。 `broken` 蜴溷屏�壽此蝮冗噪逶ョ蠖穂サ榊頃逹€螳�噪 id�檎阜髱「蠢�。サ閭ス螻慕、コ蟷カ蛻�髯、螳�シ瑚€御ク肴弍謚雁ョ�ォッ蜃コ譚・辟カ蜷主惠莨夊ッ晏星蜉ィ譌カ螟ア雍・縲よ悴扈�」�ササ菴� preset 逧�Κ鄂イ霑泌屓遨コ蜷榊黒閠碁撼髞呵ッッ�悟屏荳コ蜈ア逕ィ螳ソ荳サ扈�」�悽霄ォ蟆ア譏ッ荳€遘肴怏謨磯Κ鄂イ縲AagentPreset.select` 逕ィ蜿ヲ荳€荳ェ preset 驥咲サ�汾荳ェ莨夊ッ晉噪 agent�御ク比サ�惠莨夊ッ晉ゥコ逋ス譌カ蜈∬ョク�壻ク€譌ヲ霍題ソ�ササ菴戊スョ谺。�碁ぅ谿オ蜴�彰蟆ア譏ッ蝨ィ隸・ preset 逧�キ・蜈キ荳倶コァ逕溽噪�梧崛謐「莨夂蕗荳区裏豕墓鴬陦檎噪蟾イ隶ー蠖� tool call�梧ュ、譌カ霑泌屓 `agent-preset-locked`縲Bgent 荳惹シ夊ッ晞�荳埼楳豈≫€披€泌宵譖ソ謐「扈�」�シ御ク疲崛謐「螟ア雍・莨壽△螟榊次譚・逧�サ�」�€�
`agentPreset.read`縲~copy`縲~openDocument` 荳� `remove` 雍溯エ」邂。逅�サ�」�悽霄ォ縲Aread` 霑泌屓譁�悽霑槫酔螳�噪 `trust`�御セ帛宵隸サ譟・逵句勣菴ソ逕ィ縲ょ�菴懷宵譛牙、榊宛荳€遘榊�蜈・�啻copy` 謗・謾カ `{ from, agentPreset, name? }`窶披€比ク、荳ェ逕ア Host 蟇ケ辣ァ閾ェ霄ォ譬ケ逶ョ蠖戊ァ」譫千噪 id 蜉�荳€荳ェ蜿ッ騾画仞遉コ蜷坂€披€泌ケカ謨エ逶ョ蠖募、榊宛譚・貅撰シ悟屏豁、扈�」�枚譛ャ荳咲サ剰ソ�シ�霎灘アゑシ悟憶譛ャ荳主�譚・貅仙酔遲牙庄蜉�霓ス�帑ク榊庄郤ヲ譚滓�蟾イ陲ォ蜊�逕ィ逧� id 蝗樒ュ� `agent-preset-invalid`�形remove` 蟇ケ髫城刋 preset 蝗樒ュ� `agent-preset-read-only`縲AopenDocument` 謚贋ク€荳ェ譛ャ蝨ー蛻帑ス� preset 逧�**逶ョ蠖�**莠、扈吝ケウ蜿ー謇灘シ€蝎ィ窶披€碑ッキ豎ょ宵謳コ蟶ヲ id縲∫サ昜ク肴声蟶ヲ霍ッ蠕�シ悟屏豁、豐。譛我ササ菴墓オ剰ァ亥勣霓ス闕キ閭ス騾我クュ莉サ諢乗枚莉カ邉サ扈溽岼譬�シ幃Κ鄂イ豐。譛牙次逕滓遠蠑€蝎ィ譌カ蝗樒ュ� `{ opened: false, path }` 萓帷阜髱「莉・譁�悽螻慕、コ�碁囂髯� preset 荳� `remove` 荳€譬キ陲ォ諡堤サ晢シ瑚€檎ス大�逧� `nativeOpen` 驟咲スョ蜿ッ蝨ィ蟷ウ蜿ー謗「豬具シ�canOpenNativePath`�牙、ア逵溷、�忠豁サ隸・閭ス蜉帙€りソ吝屁荳ェ譁ケ豕募惠 [`dsh-client-connection`](../../client/connection/README.md) 荳ュ陲ォ蝗コ螳壼惠邇ッ蝗槫慍蝮€�夂サ�」�欠譏惹コ�ク€荳ェ莨夊ッ晄園霑占。檎噪謠剃サカ�悟屏豁、隸サ蜿門ョ�弍萓ヲ蟇滂シ瑚€� copy/remove/openDocument 邂。逅�錐蜊募ケカ鬩ア蜉ィ螳ソ荳サ譯碁擇縲Alist` 荳� `select` 菫晄戟荳コ譎ョ騾壽婿豕補€披€泌錐蜊募宵謳コ蟶ヲ id 荳惹ソ。莉サ郤ァ蛻ォ�梧ッ丈クェ preset 騾画叫蝎ィ驛ス髴€隕∝ョ�シ幄€碁€画叫荳€荳ェ preset 蟷カ荳肴ッ� `session.create` 閾ェ蟶ヲ逧� `agentPreset` 螟夂サ吩ササ菴戊�蜉幢シ御ス募�鮟倩ョ、 preset 譛ャ蟆ア蟶ヲ逹€ bash縲Alist` 謚・蜻贋ク、荳ェ荳榊性霍ッ蠕�噪閭ス蜉帶��ソ暦シ啻authorable`�悟叉驛ィ鄂イ譏ッ蜷ヲ驟咲スョ莠�庄萓帛、榊宛譁ー preset 逧��ケ逶ョ蠖包シ嫣hasDocument`�悟叉 `openDocument` 莨壼次逕滓遠蠑€縲∬ソ俶弍蝗樒ュ比ク€荳ェ霍ッ蠕�€�
`command.*` 荳� `skill.*` 鬚�沺蜷大ョ「謌キ遶ッ證エ髴イ螳ソ荳サ蜻ス莉、豕ィ蜀瑚。ィ蜥� skill�域橿閭ス�臥岼蠖輔€よッ丈クェ譁ケ豕暮�騾夊ソ� `sessionId` 蟇サ蝮€荳€荳ェ莨夊ッ晉噪 Agent�郁「ォ譛榊苅逧�シ夊ッ晏ソ�怏 Agent�嫣command.*` 扈冗罰荳� `session.*` 逶ク蜷檎噪霍ッ蠕�△螟榊�莨夊ッ晢シ瑚€� `skill.list` 莉惹シ夊ッ晏、エ隗」譫宣。ケ逶ョ譬ケ逶ョ蠖包シ御ク崎ァヲ遒ー Agent 豕ィ蜀瑚。ィ�峨€Askill.list` 譛榊苅莠� composer 逧�除蜊包シ壼ョ�ソ泌屓豈丈ク€荳ェ逕ィ謌キ蜿ッ隹�畑逧� skill 蜿雁� `modelInvocable` 譬�ソ暦シ瑚ョゥ闖懷黒閭ス螟滓���莉�剞逕ィ謌キ��disable-model-invocation`�臥噪譚。逶ョ窶披€疲万譚�謇句漢譏ッ霑咏アサ譚。逶ョ蜚ッ荳€逧�ー�畑霍ッ蠕�€ょ�陦ィ譏ッ skill 鬚�沺蜚ッ荳€逧� RPC窶披€碑ー�畑譛ャ霄ォ蟆ア譏ッ荳€谺。譎ョ騾夂噪 `session.prompt`�形dsh-tool-skill` 莨壼惠 pre-step 霎ケ逡瑚ッ�悪蜈カ荳ュ莉・遨コ逋ス荳コ逡檎噪 `/name` token�悟ケカ莉・豕ィ蜈・逧� `<skill_content>` 荳贋ク区枚菴懃ュ費シ悟屏豁、謇€譛牙�蜿」��eb縲ゝUI 荳� ACP��gent Client Protocol�会シ牙�莠ォ蜷御ク€譚。遑ョ螳壽€ァ霍ッ蠕�シ梧焔蜉ィ髞ョ蜈・逧�枚譛ャ荵溯オー隸・霍ッ蠕�シ御ク疲イ。譛我ク楢ョセ逧�ー�畑蜊剰ョョ縲Acommand.execute` 蝨ィ螳ソ荳サ萓ァ霑占。御ク€譚。譁懈擒蜻ス莉、陦鯉シ瑚ッュ荵我クコ郤ッ蜃���壼桃蠎疲冠蜻願ッ・陦梧弍蜷ヲ隗」譫仙芦螟�炊蝎ィ�悟ケカ蝨ィ隗」譫仙芦譌カ蝗槫クヲ體ク騾�逧�函蜻ス蜻ィ譛� `commandId`�亥ー�悽谺。遑ョ隶、荳取オ∬鰍轤ケ蜈ウ閨費シ会シ帷サ灘ア€扈冗罰謖∽ケ�誠雍ヲ蟷カ蝨ィ mux 豬∝ケソ謦ュ逧� `command/run`/`command/done` 逕溷多蜻ィ譛滉コ倶サカ蟇ケ謇ソ霓ス縲ょ多莉、螟�炊蝎ィ霑占。瑚カ�ソ� 30 遘堤噪莨�霎灘▼蠎キ譌カ髯蝉サ榊ア樊ュ」蟶ク�悟屏豁、 `command.execute` 莉�声蟶ヲ隹�畑譁ケ�剰ソ樊磁蜿匁カ井ソ。蜿キ�幄ッ・菫。蜿キ蜿ッ蜿匁カ域ュ」蝨ィ霑占。檎噪螟�炊蝎ィ縲Acommands/change` 謳ュ荵倩スャ蜿台コ倶サカ蟶ァ菴應クコ豕ィ蜀瑚。ィ郤ァ逶ョ蠖募、ア謨井ソ。蜿キ�壼ョ「謌キ遶ッ驥肴眠諡牙叙 `command.list` 閠御ク肴弍蛛壼キョ蛻�€りスャ蜿醍噪 `agent-preset/selected` 譏ッ螳�潔莨夊ッ晉イ貞コヲ逧�ッケ蠎皮黄�檎罰關ス雍ヲ逧�€画叫謠蝉コ、轤ケ蜿大��夐㍾扈�ゥコ莨夊ッ晉噪 agent 蜿ェ譏ッ驥肴眠謖よ磁蜈カ scope�御ク堺コァ逕滉ササ菴墓ウィ蜀鯉シ悟屏豁、隸・莨夊ッ晉サ��謇€蜀ウ螳夂噪荳、莉ス逶ョ蠖包シ�command.list`縲~skill.list`�蛾�莨壼、ア謨茨シ悟唆豐。譛我ササ菴墓ウィ蜀瑚。ィ蜿伜喧譚・螳」蜻雁ョ�€�
2026-07-26 05:03:53 +08:00
`settings.*`縲~credentials.*` 荳� `llm.*` 鬚�沺譏ッ驟咲スョ鬘オ蜊剰ョョ縲Tettings 鬚�沺譛榊苅莠主キイ豕ィ蜀悟庄驟咲スョ謠蝉セ帶婿謇€謖�髄逧� namespace��ctx.llm.listConfigurableProviders()`�会シ悟ケカ鬚晏、匁恪蜉。莠惹ク€莉ス蟆丞梛縲∵仞蠑冗噪 allowlist窶披€埜eb 蛛丞・ス `locale`縲~permission`縲~ui-conversation` 荳� `ui-theme`縲∵薯莉カ驟咲スョ鬘オ謇€郛冶セ醍噪螳ソ荳サ蟷ウ髱「謠剃サカ蛻�鰍 `agent-loop`縲~bash` 荳� `web-search-deepseek`�御サ・蜿贋コァ蜩∵戟譛臥噪 `ui-onboarding`�帑サ�眠蠅樔ク€鬘ケ Settings 豕ィ蜀鯉シ檎サ昜ク堺シ壻スソ蜈カ蜿ッ陲ォ霑懃ィ玖ッサ蜿匁�蜀吝�縲ょ�莉紋ササ菴� namespace 驛ス蜿ェ莨壼セ怜芦 `settings-not-exposed`窶披€疲悴豕ィ蜀檎噪 namespace 蠕怜芦逧�弍蜷御ク€荳ェ遲泌、搾シ悟屏豁、豐。譛芽ー�畑譁ケ閭ス髱�騾蝉クェ謗「豬区滑豕ィ蜀瑚。ィ譫壻クセ蜃コ譚・縲Asettings.describe` 荳コ豈丈クェ蟾イ證エ髴イ namespace 謠蝉セ帛�蠎丞�蛹� schemastery schema縲∬┳謨丞錘逧��螻ょ€シ��esolved/`base`/`user`窶披€泌ュ玲ョオ蜃コ邇ー蝨ィ `user` 荳ュ蜊ウ譬�ョー蜈カ陲ォ逕ィ謌キ隕�尠�峨€~secrets` 讒ス菴榊�陦ィ縲∬ッ・蛻�鰍逧� `revision`�御サ・蜿雁ク�ー泌梛 `hasDocument` 閭ス蜉帶��ソ励€よオ剰ァ亥勣荳堺シ壽噺蛻ー Host 霍ッ蠕�シ壽裏霍ッ蠕�盾謨ー逧� `settings.openDocument` 莨夊ッキ豎よ署萓帶婿蜃�、�枚譯」�悟�謚顔罰 Host 隗」譫仙�逧�サ捺棡莠、扈吝次逕滓遠蠑€蝎ィ�悟屏豁、莉サ菴墓オ剰ァ亥勣霓ス闕キ驛ス譌�豕暮€画叫莉サ諢乗枚莉カ邉サ扈溽岼譬�€Asettings.update`/`settings.replace` 蜀吝�逕ィ謌キ螻ゑシ嫣settings.mutate` 蛻吝惠蟾イ蟄伜�闃ゆク頑命蜉�霍ッ蠕� op��set`/`unset`�会シ瑚ソ呎弍謖∵怏閼ア謨剰ァ�崟逧�ョ「謌キ遶ッ逧�唖髯、霍ッ蠕�€披€疲紺豁、驥榊サコ蛻�鰍蜀肴紛菴捺崛謐「�御シ壼唖謗牙刻隶ョ莉取悴蝗樔シ�霑�噪驍」莠帶惻蟇�€ゆササ菴募�蜈・驛ス蜿ッ謳コ蟶ヲ `expectedRevision`�幃刪譌ァ逧�悄譛帛€シ莨壻サ・ `settings-conflict` 霑槫酔荳、荳ェ revision 菴懃ュ費シ瑚€御ク肴弍隕�尠蜈郁誠蝨ー逧�ぅ荳ェ蜀呎婿�悟�菴呎ッ冗ァ� seam 諡堤サ晏�謚伜匠荳コ `settings-rejected`縲Tecret 隗定牡逧�€シ扈昜ク榊惠莉サ菴穂ク€螻よ政荵倅ササ菴募桃蠎費シ孕ecret 蜿ェ豐ソ荳€荳ェ譁ケ蜷題キィ雜雁刻隶ョ窶披€泌惠 `update`/`mutate` 霓ス闕キ謌� `credentials.set` 荵句�縲Acredentials.describe` 霑泌屓荳榊性蛟シ逧�ァ�崟��configured`/`source`/`writable`�会シ形credentials.set`/`credentials.unset` 蛻呎滑陲ォ驕ョ阡ス蠑慕畑逧�拠扈晄丐蟆�クコ `credential-rejected`縲Allm.providers` 謚雁庄驟咲スョ謠蝉セ帶婿逶ョ蠖穂ク主ュ俶エサ霍ッ逕ア蜷亥ケカ�井シ醍悛譚。逶ョ謳コ蟶ヲ `active: false`�帶悴螢ー譏守噪蟄俶エサ霍ッ逕ア霑ス蜉�蝨ィ蜷趣シ御ク榊クヲ settings 蝨ー蝮€�会シ形llm.models` 蛻呎弍荳惹シ夊ッ晄裏蜈ウ逧�岼蠖輔€Allm.discoverModels` 隸「髣ョ鬘オ髱「蟆壼惠襍キ闕臥噪謠蝉セ帶婿遶ッ轤ケ�啻settingsNs` 騾牙�諛ょセ苓ッサ蜿冶ッ・蛻苓。ィ逧�€る�蝎ィ螳カ譌擾シ檎ォッ轤ケ縲∝刻隶ョ荳主ッ�徴蛻呎擂閾ェ陦ィ蜊戊€碁撼蟄伜お縲ょョ�サ€荵磯�荳榊�窶披€泌屓螟肴弍蛟咎€会シ悟宵譛蛾囂蜷守噪 `settings.mutate` 謇榊�螳夊キッ逕ア譛榊苅莉€荵遺€披€泌屏豁、蜈カ `apiKey` 譏ッ secret 蜿ッ莉・謳ュ荵倡噪隨ャ荳我クェ霓ス闕キ�亥嘗荳、荳ェ譏ッ `settings.update`/`mutate` 荳� `credentials.set`�会シ御ク皮サ昜ク崎「ォ蟄伜お謌門屓譏セ縲Iost 莉惹ク榊ュ伜お謌門屓莨�螳�シ帑ク主嘗荳、閠�ク€譬キ�悟ョ�。ョ螳樔シ壽政荵伜ョ「謌キ遶ッ逧��遶吩ソ。蟆�シ形subscribeEnvelopes()` 逧�ァょッ溯€��逵句芦窶披€比クコ隸・ tap 蛛夊┳謨乗弍謨エ荳ェ驟咲スョ髱「逧�隼蜉ィ�瑚€碁撼譛ャ譁ケ豕穂ク€螳カ逧�コ九€よッ丈ク€遘肴拠扈晢シ域裏莠コ譛榊苅逧� namespace縲∵イ。譛牙庄隸サ蛻苓。ィ逧�刻隶ョ縲∽ク榊庄霎セ遶ッ轤ケ縲∬「ォ諡貞�謐ョ�蛾�謚伜匠荳コ `model-discovery-failed`�悟�豸域�譏ッ騾る�蝎ィ閾ェ蟾ア逧�枚譛ャ�慧etails 轤ケ蜷崎「ォ隸「髣ョ逧�ォッ轤ケ�檎サ昜ク咲せ蜷肴園謠蝉セ帷噪蜃ュ謐ョ縲ょ、ア謨磯€夂衍隶ゥ豈丈クェ髱「譌�髴€霓ョ隸「蜊ウ菫晄戟謾カ謨帙€Asettings/document-updated` 荳� `credentials/updated` 謳ュ荵伜次譬キ霓ャ蜿台コ倶サカ蟶ァ�郁ァ∽ク具シ会シ悟屏豁、隗」譫仙€シ譛ェ蜿倡噪蜴溷ァ玖ョセ鄂ョ蜿俶峩蜷梧�キ閭ス蛻ー霎セ螳「謌キ遶ッ�悟�謐ョ螟ア謨磯€夂衍荵滉サ咲┯蜿ェ蟶ヲ蠑慕畑蜷阪€∫サ昜ク榊クヲ蛟シ縲Allm/adapters-updated` 荳� `settings/document-updated` 荳€蟷カ蜴滓�キ霓ャ蜿托シ帛�菴捺ィ。蝙区カ郁エケ譁ケ逶エ謗・隶「髦�ソ吩ク、荳ェ owner 莠倶サカ�悟屏荳コ諡捺苑謠蝉コ、蜥瑚ョセ鄂ョ譁�。」驛ス閭ス迢ャ遶区隼蜿伜�逶ョ蠖輔€よオ剰ァ亥勣霓ス菴捺滑謨エ荳ェ驟咲スョ髱「�亥性隸サ蜿紋ク主次逕滓桃菴懶シ啻settings.describe`/`openDocument`/`update`/`replace`/`mutate` 荳� `credentials.describe`/`set`/`unset`�蛾剞蛻カ荳コ莉�磁蜿玲擂閾ェ蝗樒識蝨ー蝮€逧�酔貅占ッキ豎や€披€泌叉 `host.pickDirectory` 謇€蝨ィ逧�音譚�寔蜷医€よ悴陬� settings 謌門�謐ョ provider 逧�サ�粋莨壻サ・謖�錐郛コ螟ア謠剃サカ縲∝桁蜷ォ隗」蜀ウ蟒
2026-07-26 05:03:53 +08:00
## 霓ス菴灘アゑシ�/client` + 譬ケ霍ッ蠕�シ�
`AbstractApiClient` 謖∵怏蜈ィ驛ィ蜊剰ョョ荳榊序驥擾シ夂ュセ蜿� rpcId縲∝桁陬�シ剰ァ」蛹�ソ。蟆√€〇od 隗」譫舌€ヾSE 蟶ァ隗」遐√€∽ク€蜈�ッキ豎りカ�慮�御サ・蜿頑潔蠕ョ莉サ蜉。謇ケ螟�炊逧�ソ。蟆∬ァよオ具シ�subscribeEnvelopes`�会シ帛ケウ蜿ー蟄千アサ蜿ェ謠蝉セ� `doFetch` 莨�霎鍋識闃ゅ€AInProcessApiClient` 莉・ `toFetchHandler(api)` 荳コ蝓コ遑€�御サ肴弍蜷梧桷謗・轤ケ�壼ョ�ソ占。悟ョ梧紛逧�刻隶ョ蠎丞�蛹紋ク取�。鬪瑚キッ蠕�€御ク咲サ剰ソ�ス醍サ懶シ御セ幃怙隕∬ッ・霍ッ蠕�噪隹�畑譁ケ蜥瑚スス菴捺オ玖ッ穂スソ逕ィ縲ゆコァ蜩∫噪 `dsh --profile headless` 譏ッ逶エ霑� core 逧��蜿」�御ク肴撃霓ス譛ャ蛹�€�
2026-07-26 05:03:53 +08:00
## 讓。蝙倶ス馴ェ�
2026-08-09 15:27:21 +08:00
譌�縲りッ・蛹�ョ壻ケ牙ョ「謌キ遶ッ荳主ョソ荳サ髣エ逧� wire 郤ヲ螳壼柱霓ス菴難シ悟�荳ュ豐。譛我ササ菴募�螳ケ莨夊ソ帛�讓。蝙玖ッキ豎ゅ€�
2026-07-26 05:03:53 +08:00
#### KV Cache 蠖ア蜩�
2026-07-26 05:03:53 +08:00
譌��幄ッ・蛹�里荳咲サ�」�ケ滉ク榊書騾∵署萓帶婿隸キ豎ゅ€�
## 蟾イ遏・髯仙宛荳取嘯郛謎コ矩。ケ
2026-07-26 05:03:53 +08:00
- **霓ャ蜿醍噪 Remote 莠倶サカ蟇�ア�惠霑吝・� legacy 蟶ァ閨泌粋驥�**�啻host/remote-event` 菴丞惠 `HostFrame` 荳ュ�梧弍荳コ莠�ョゥ謚暮€定キッ蠕�、咲畑邇ー譛牙ョソ荳サ豬√€∽ク榊ソ�眠蠑€隨ャ荳画擅荳玖。碁€夐%�悟屏豁、隸サ襍キ譚・蜒乗弍譛ャ蛹�凶譛� Remote 莠倶サカ螂醍コヲ縲ょケカ髱槫ヲよュ、�壼錐蜊募ス� `dsh-api-remotes`�梧カ郁エケ遶ッ蜉ィ隸肴弍 `ctx.remote.$on`縲ょー�擂螳ソ荳サ豬∵紛菴捺成遖サ譛ャ蛹�慮�瑚ッ・蟶ァ髫丈ケ区成襍ー�梧カ郁エケ遶ッ螂醍コヲ荳榊女蠖ア蜩搾シ�蜴溷ァ脳(../../../.agents/notes/implemented/architecture/2026-08-10-remote-event-delivery.md)�峨€�
2026-08-09 15:27:21 +08:00
- **蠕�、�炊莠、莠堤憾諤∽ス堺コ主ョソ荳サ萓ァ**�嗹ire 菴ソ逕ィ POST `/api/respond` 蜉� `RpcReceipt`�嫣src/api-proxy.ts` 荳ュ逧�。ィ蜿ェ螟�炊髣ョ鬚假シ御ク榊桁蜷ォ螳。謇ケ譚。逶ョ縲�
- **鬚�蕗 seam 荳崎ソ帛� `RpcMethodMap`**�啻prompt.mode: 'inject'`縲~task.list` 蜥梧緒霑ー蟄玲ョオ `hostInstanceId` 驛ス譏ッ蟾イ隶ー蠖慕噪鬚�蕗鬘ケ�帶ィ。蝙句書邇ー菴ソ逕ィ `llm.models`縲よ悴遏・譁ケ豕穂シ壼惠菫。蟆∬ァ」譫先慮逶エ謗・螟ア雍・�瑚€御ク堺シ夊ソ泌屓縲悟ー壽悴螳樒鴫縲埼漠隸ッ遐√€�
2026-07-26 05:03:53 +08:00
- **豐。譛牙刻隶ョ迚域悽蟄玲ョオ**�壼ョ「謌キ遶ッ荳主ョソ荳サ荳€蜷悟書蟶�シ帛宵譛牙�邇ー迢ャ遶句書蟶�噪螳「謌キ遶ッ蜷趣シ形host.describe` 謇堺シ壼「槫刈迚域悽蜊丞膚蟄玲ョオ縲�
2026-07-27 18:38:00 +08:00
- **謳懃エ「螟ア雍・莨壼桁蜷ォ謠蝉セ帶婿隸頑妙菫。諱ッ**�夂ス大�譏ッ蜊慕畑謌キ譛ャ蝨ー譛榊苅縲ょー��證エ髴イ扈吝、壼錐逕ィ謌キ逧�スス菴灘ソ�。サ逕ィ蜿ッ螳牙�蜈ャ蠑€逧�ッ頑妙菫。諱ッ譖ソ莉」蜀�Κ謳懃エ「扈�鰍縲�
- **Linux 蜴溽函騾画叫蝎ィ萓晁オ匁。碁擇蟾・蜈キ**�壼惠 `native` 閭ス蜉帑ク具シ兄enity 蜥� KDialog 蝮�悴螳芽」�慮�形host.pickDirectory` 莨夂サ吝�蛹�性隗」蜀ウ蟒コ隶ョ逧�漠隸ッ謠千、コ�帷サ�粋螻る擇逧�屓騾€譏ッ browse 蜷守ォッ�郁ァ� [native 蜷守ォッ README](../directory-picker-native/README.md)�峨€�
- **蜀キ莨夊ッ晉噪 `updatedAt` 莨壽滑荳€谺。蜊慕コッ逧�鏡襍キ邂嶺ス懷�蜈・�井サ�€先枚莉カ蜷守ォッ��**�壼キイ髯�刈謚募スア謗帝勁莠� `session/end-seed` 霎ケ逡鯉シ悟屏荳コ謗・謇倶ク€荳ェ莨夊ッ昜ク咲ョ玲エサ蜉ィ�帑ス��莨夊ッ晉噪 `updatedAt` 蜿冶�蜈カ譌・蠢玲枚莉カ逧� mtime�瑚€梧ッ丈ク€谺。謖∽ケ��蜈・驛ス莨壼姐譁ー螳�シ悟桁諡ャ霑呎擅霎ケ逡後€AagentFor()` 莨壼惠鬥匁ャ。隗ヲ遒ー譌カ諱「螟堺ク€荳ェ蜀キ莨夊ッ晢シ悟屏豁、蝨ィ螳「謌キ遶ッ驥御サ�サ�遠蠑€荳€荳ェ莨夊ッ晏ーア莨壼�蜈・螳�€りソ吝宵騾ら畑莠� `locate()` 閭ス隗」譫仙�騾蝉シ夊ッ昜コァ迚ゥ逧�惻譎ッ�悟叉 JSONL�婀QLite 霑泌屓 `undefined`�悟屏豁、螳�噪蜀キ莨夊ッ晏屓騾€蛻ー `createdAt`�悟¥蟾ョ譁ケ蜷醍嶌蜿坂€披€泌¥譌ァ閠御ク肴弍蛛乗眠窶披€比ク比ク手ソ呎擅霎ケ逡梧裏蜈ウ縲ゆコ取弍荳€荳ェ陲ォ隗ヲ遒ー霑�唆豐。譛牙惠驥碁擇蟾・菴懆ソ�噪莨夊ッ晢シ悟惠驥肴眠髯�刈荵句燕莨壽潔譎壻コ主�譛€蜷惹ク€谺。逵溷ョ樊エサ蜉ィ逧�慮髣エ謗貞コ上€りヲ∵滑荳、閠�玄蛻�シ€髴€隕∬ッサ蜿匁律蠢暦シ瑚€瑚ソ呎�諱ー譏ッ mtime 霍ッ蠕�ュ伜惠逧�岼逧�シ帛惠邏「蠑穂クュ蟄伜お荳€荳ェ譛€蜷取エサ蜉ィ蟄玲ョオ蜿ッ莉・莉取コ仙、エ菫ョ螂ス螳�シ瑚激蝗エ隗ー譛€蜷取エサ蜉ィ邏「蠑� Agent Note](../../../.agents/notes/proposed/architecture/2026-07-29-durable-last-activity-index.md)縲�