evolcore 0.0.25 → 0.0.26
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/CHANGELOG.md +607 -565
- package/LICENSE +21 -21
- package/README.md +455 -455
- package/bin/codex-managed-acl.ps1 +160 -160
- package/bin/codex-managed-hook.mjs +208 -208
- package/bin/ec-safe-output.js +327 -327
- package/bin/ec.js +40 -29
- package/bin/install-codex-managed-hooks.mjs +582 -555
- package/dist/agents/baseagent.js +96 -46
- package/dist/agents/claude-runner.js +50 -12
- package/dist/agents/codex/app-server-client.js +13 -5
- package/dist/agents/codex/catalog.js +1 -1
- package/dist/agents/codex/diagnostics.js +34 -1
- package/dist/agents/codex-runner.js +121 -38
- package/dist/agents/ecagent-runner.js +4 -9
- package/dist/agents/gemini-runner.js +2 -7
- package/dist/agents/runner-types.js +25 -17
- package/dist/aun/aid/agentmd.js +81 -8
- package/dist/aun/aid/client.js +1 -1
- package/dist/aun/aid/identity.js +1 -1
- package/dist/aun/aid/index.js +1 -1
- package/dist/aun/aid/store.js +17 -13
- package/dist/aun/menu-client.js +74 -0
- package/dist/aun/msg/group.js +1 -1
- package/dist/aun/msg/managed-operation.js +1 -1
- package/dist/aun/msg/p2p.js +6 -1
- package/dist/aun/msg/upload.js +30 -22
- package/dist/channels/aun.js +329 -94
- package/dist/cli/agent-command.js +105 -84
- package/dist/cli/agent-create.js +112 -10
- package/dist/cli/agent.js +16 -5
- package/dist/cli/aun-commands.js +297 -296
- package/dist/cli/bench.js +20 -20
- package/dist/cli/config.js +47 -28
- package/dist/cli/contact.js +70 -13
- package/dist/cli/ctl-command.js +22 -22
- package/dist/cli/daemon-commands.js +105 -40
- package/dist/cli/diag.js +31 -0
- package/dist/cli/fs-command.js +67 -67
- package/dist/cli/handoff-command.js +41 -9
- package/dist/cli/index.js +83 -77
- package/dist/cli/link-rules.js +21 -21
- package/dist/cli/managed-command-guard.js +3 -0
- package/dist/cli/menu-client.js +46 -31
- package/dist/cli/net-check.js +22 -22
- package/dist/cli/queue-command.js +29 -29
- package/dist/cli/response.js +30 -30
- package/dist/cli/restart-monitor.js +87 -40
- package/dist/cli/stats.js +51 -51
- package/dist/cli/trigger-command.js +56 -56
- package/dist/config/builtin-roles.js +1 -0
- package/dist/config/config-operation-service.js +145 -0
- package/dist/config/contact-operation-service.js +96 -7
- package/dist/config/resolved-config-op.js +27 -7
- package/dist/core/agent-application-service.js +2 -1
- package/dist/core/auth/authorization-audit.js +20 -12
- package/dist/core/auth/operation-authorizer.js +25 -4
- package/dist/core/auth/operation-catalog.js +35 -4
- package/dist/core/auth/remote-access-store.js +40 -1
- package/dist/core/bootstrap-service.js +1 -1
- package/dist/core/command/command-handler.js +83 -26
- package/dist/core/command/diag-service.js +118 -0
- package/dist/core/command/menu-catalog.js +12 -3
- package/dist/core/command/menu-handler.js +47 -26
- package/dist/core/command/menu-protocol.js +5 -0
- package/dist/core/command/menu-token-store.js +41 -8
- package/dist/core/command/slash-gate.js +34 -4
- package/dist/core/command/slash-handler.js +86 -21
- package/dist/core/handoff/runtime.js +205 -27
- package/dist/core/handoff/store.js +193 -4
- package/dist/core/message/im-renderer.js +72 -21
- package/dist/core/message/message-bridge.js +69 -9
- package/dist/core/message/message-queue.js +26 -0
- package/dist/core/message/message-utils.js +1 -0
- package/dist/core/message/response-engine.js +47 -28
- package/dist/core/model/catalog-service.js +79 -49
- package/dist/core/model/context-window-suffix.js +33 -0
- package/dist/core/model/model-catalog.js +1 -1
- package/dist/core/model/model-permission.js +12 -3
- package/dist/core/permission/ec-command-parser.js +51 -12
- package/dist/core/permission/sandbox-runtime.js +36 -14
- package/dist/core/permission/tool-policy.js +2 -1
- package/dist/index.js +280 -163
- package/dist/ipc.js +54 -2
- package/dist/response-system/engines/v1/proactive-flow.js +59 -2
- package/dist/stats/billing.js +41 -15
- package/dist/stats/db.js +159 -159
- package/dist/stats/eck-vars.js +9 -9
- package/dist/stats/price-resolver.js +28 -10
- package/dist/stats/query.js +139 -139
- package/dist/stats/role-budget.js +6 -6
- package/dist/stats/writer.js +51 -51
- package/dist/utils/cross-platform.js +30 -1
- package/dist/utils/error-dict.json +160 -160
- package/dist/utils/error-utils.js +21 -0
- package/dist/utils/evolcore-version.js +129 -0
- package/dist/utils/logger.js +3 -1
- package/dist/utils/macos-autostart.js +22 -22
- package/dist/utils/model-prices.jsonl +23 -23
- package/dist/utils/npm-ops.js +176 -35
- package/dist/utils/welcome.js +22 -22
- package/ecagent/LICENSE +21 -21
- package/ecagent/NOTICE +11 -11
- package/ecagent/README.md +61 -61
- package/ecagent/dist/harness/compaction/branch-summarization.js +30 -30
- package/ecagent/dist/harness/compaction/compaction.js +83 -83
- package/ecagent/dist/harness/messages.js +7 -7
- package/kits/docs/GUIDE.md +20 -20
- package/kits/docs/INDEX.md +66 -66
- package/kits/docs/aun/CHEATSHEET.md +19 -19
- package/kits/docs/aun/SYNC_PROTOCOL.md +15 -15
- package/kits/docs/channels/aun.md +56 -56
- package/kits/docs/channels/feishu.md +56 -56
- package/kits/docs/context-assembly.md +364 -364
- package/kits/docs/eck_templates/GUIDE.template.md +22 -22
- package/kits/docs/eck_templates/INDEX.template.md +28 -28
- package/kits/docs/eck_templates/path-registry.template.md +33 -33
- package/kits/docs/eck_templates/runtime.template.md +19 -19
- package/kits/docs/evolcore/INDEX.md +71 -71
- package/kits/docs/evolcore/agent-create.md +170 -165
- package/kits/docs/evolcore/agent.md +66 -66
- package/kits/docs/evolcore/aid.md +60 -60
- package/kits/docs/evolcore/codex-windows-sandbox.md +146 -146
- package/kits/docs/evolcore/config.md +202 -195
- package/kits/docs/evolcore/contact.md +75 -68
- package/kits/docs/evolcore/ctl.md +46 -46
- package/kits/docs/evolcore/event.md +216 -216
- package/kits/docs/evolcore/fs-architecture.md +1215 -1215
- package/kits/docs/evolcore/fs.md +110 -110
- package/kits/docs/evolcore/group-collaboration.md +243 -243
- package/kits/docs/evolcore/group-fs.md +17 -17
- package/kits/docs/evolcore/group-rules.md +251 -251
- package/kits/docs/evolcore/group.md +152 -152
- package/kits/docs/evolcore/menu-client.md +42 -34
- package/kits/docs/evolcore/model.md +50 -50
- package/kits/docs/evolcore/msg.md +166 -165
- package/kits/docs/evolcore/response.md +75 -75
- package/kits/docs/evolcore/rpc.md +37 -37
- package/kits/docs/evolcore/self-summary.md +29 -29
- package/kits/docs/evolcore/stats.md +83 -83
- package/kits/docs/evolcore/storage.md +50 -50
- package/kits/docs/evolcore/trigger.md +575 -575
- package/kits/docs/identity/AID_PROFILE_SPEC.md +26 -26
- package/kits/docs/identity/PATH_OPS.md +16 -16
- package/kits/docs/identity/ROLE_DETAIL.md +25 -25
- package/kits/docs/identity/identity-tools.md +26 -26
- package/kits/docs/path-registry.md +62 -62
- package/kits/docs/prompt-loading-architecture.md +269 -269
- package/kits/docs/venues/aun-group.md +45 -45
- package/kits/docs/venues/aun-private.md +10 -10
- package/kits/docs/venues/client-desktop.md +10 -10
- package/kits/docs/venues/client-mobile.md +10 -10
- package/kits/docs/venues/feishu-group.md +13 -13
- package/kits/docs/venues/feishu-private.md +9 -9
- package/kits/docs/venues/group.md +37 -25
- package/kits/docs/venues/private.md +10 -10
- package/kits/eck_manifest.auxiliary.json +43 -43
- package/kits/eck_manifest.json +190 -190
- package/kits/eck_message_manifest.json +74 -74
- package/kits/migrations/README-role-config-v4.md +32 -32
- package/kits/migrations/migrate-contact-book-v2.mjs +748 -748
- package/kits/migrations/migrate-role-config-v4.mjs +614 -614
- package/kits/migrations/migrate-role-config-v5.mjs +365 -365
- package/kits/migrations/rename-config-file.mjs +99 -99
- package/kits/rules/01-overview.md +162 -162
- package/kits/rules/02-navigation.md +96 -96
- package/kits/rules/03-identity.md +36 -36
- package/kits/rules/04-relation.md +75 -75
- package/kits/rules/05-venue.md +60 -60
- package/kits/rules/06-channel.md +63 -63
- package/kits/schemas/_meta.json +53 -53
- package/kits/schemas/agent-config.schema.1.json +177 -177
- package/kits/schemas/agent-config.schema.10.json +395 -395
- package/kits/schemas/agent-config.schema.11.json +421 -421
- package/kits/schemas/agent-config.schema.12.json +427 -427
- package/kits/schemas/agent-config.schema.2.json +239 -239
- package/kits/schemas/agent-config.schema.3.json +119 -119
- package/kits/schemas/agent-config.schema.4.json +208 -208
- package/kits/schemas/agent-config.schema.5.json +326 -326
- package/kits/schemas/agent-config.schema.6.json +322 -322
- package/kits/schemas/agent-config.schema.7.json +303 -303
- package/kits/schemas/agent-config.schema.8.json +304 -304
- package/kits/schemas/agent-config.schema.9.json +364 -364
- package/kits/schemas/contact-book.schema.1.json +36 -36
- package/kits/schemas/contact-book.schema.2.json +43 -43
- package/kits/schemas/contact-book.schema.3.json +67 -67
- package/kits/schemas/daemon.schema.1.json +91 -91
- package/kits/schemas/daemon.schema.2.json +101 -101
- package/kits/schemas/daemon.schema.3.json +123 -123
- package/kits/schemas/daemon.schema.4.json +136 -136
- package/kits/schemas/daemon.schema.5.json +135 -135
- package/kits/schemas/daemon.schema.6.json +131 -131
- package/kits/schemas/defaults.schema.1.json +81 -81
- package/kits/schemas/defaults.schema.2.json +85 -85
- package/kits/schemas/defaults.schema.3.json +73 -73
- package/kits/schemas/defaults.schema.4.json +107 -107
- package/kits/schemas/defaults.schema.5.json +119 -119
- package/kits/schemas/menu-exec-schema-commands.md +208 -208
- package/kits/schemas/migrations/README.md +30 -30
- package/kits/schemas/relation-config.schema.1.json +158 -158
- package/kits/schemas/relation-config.schema.2.json +73 -73
- package/kits/schemas/relation-config.schema.3.json +50 -50
- package/kits/schemas/relation-config.schema.4.json +47 -47
- package/kits/schemas/relation-config.schema.5.json +47 -47
- package/kits/schemas/relation-config.schema.6.json +46 -46
- package/kits/schemas/relation-config.schema.7.json +59 -59
- package/kits/schemas/relation-config.schema.8.json +103 -103
- package/kits/schemas/role-config.schema.1.json +201 -201
- package/kits/schemas/role-registry.schema.1.json +35 -35
- package/kits/schemas/single-session.schema.1.json +31 -31
- package/kits/schemas/single-session.schema.2.json +57 -57
- package/kits/schemas/single-session.schema.3.json +32 -32
- package/kits/templates/bootstrap-welcome.md +17 -17
- package/kits/templates/message-fragments/handoff-context-to-target.md +9 -9
- package/kits/templates/message-fragments/handoff-request-to-target.md +19 -19
- package/kits/templates/message-fragments/handoff-response-to-origin.md +9 -9
- package/kits/templates/message-fragments/inject-default.md +2 -2
- package/kits/templates/message-fragments/item.md +2 -2
- package/kits/templates/roles/admin.json +92 -92
- package/kits/templates/roles/member.json +96 -96
- package/kits/templates/roles/owner.json +9 -9
- package/kits/templates/roles/visitor.json +85 -85
- package/kits/templates/system-fragments/baseagent.md +14 -14
- package/kits/templates/system-fragments/bootstrap.md +31 -29
- package/kits/templates/system-fragments/channel.md +64 -64
- package/kits/templates/system-fragments/commands.md +28 -28
- package/kits/templates/system-fragments/identity.md +13 -13
- package/kits/templates/system-fragments/relation.md +19 -19
- package/kits/templates/system-fragments/session.md +59 -59
- package/kits/templates/system-fragments/venue.md +31 -31
- package/package.json +100 -98
package/kits/docs/evolcore/fs.md
CHANGED
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
# ec fs — AUN 文件系统
|
|
2
|
-
|
|
3
|
-
`ec fs` 是个人空间和群空间的统一文件入口。群空间也用 `ec fs`,没有 `ec group fs`。
|
|
4
|
-
|
|
5
|
-
路径格式:
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
<AID>:<absolute-path>
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
无 `:` 的路径是本地路径。操作者身份用 `--as <aid>`,agent 会话内通常由 `EVOLCORE_SELF_AID` 注入,可省略。
|
|
12
|
-
|
|
13
|
-
## 已实现命令
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
ec fs ls <AID>:<path> # 列目录
|
|
17
|
-
ec fs cat <AID>:<path> # 输出文本文件;二进制/大文件返回头部摘要
|
|
18
|
-
ec fs cp <local> <AID>:<path> # 上传
|
|
19
|
-
ec fs cp <AID>:<path> <local> # 下载
|
|
20
|
-
ec fs cp <AID>:<path> <AID>:<path> # 远程复制(同后端)
|
|
21
|
-
ec fs stat [-L] <AID>:<path> # 查看节点元数据(默认不跟随软链,-L 跟随)
|
|
22
|
-
ec fs lstat <AID>:<path> # 查看节点本身(不跟随末级软链)
|
|
23
|
-
ec fs mv <AID>:<path> <AID>:<path> # 移动/改名(同后端)
|
|
24
|
-
ec fs rm [-r] <AID>:<path> # 删除文件或目录
|
|
25
|
-
ec fs mkdir [-p] <AID>:<path> # 创建目录
|
|
26
|
-
ec fs ln -s <target> <AID>:<path> # 创建软链(personal storage)
|
|
27
|
-
ec fs chmod [mode] <AID>:<path> # 切换公开/私有(personal storage)
|
|
28
|
-
ec fs setfacl <AID>:<path> -m|-x ... # 设置/移除 ACL(personal storage)
|
|
29
|
-
ec fs getfacl <AID>:<path> # 查看 ACL(personal storage)
|
|
30
|
-
ec fs token issue|revoke|ls <path> # 管理访问 token(personal storage)
|
|
31
|
-
ec fs find <AID>:<path> [filters] # 查找节点
|
|
32
|
-
ec fs df <AID>: # 查看容量/配额
|
|
33
|
-
ec fs mount <target> --volume <id> # 挂载实体卷
|
|
34
|
-
ec fs mount <target> --source <src> # 挂载远程子树
|
|
35
|
-
ec fs approve <AID>:<path> # 批准待审挂载(personal storage)
|
|
36
|
-
ec fs reject <AID>:<path> # 拒绝待审挂载(personal storage)
|
|
37
|
-
ec fs umount <AID>:<path> # 卸载挂载点
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
通用选项:
|
|
41
|
-
|
|
42
|
-
- `--format json`:结构化输出
|
|
43
|
-
- `--as <aid>`:显式指定操作者
|
|
44
|
-
- `--aun-path <path>`:指定 AUN keystore 根
|
|
45
|
-
- `--app <name>`:指定 AUN app slot
|
|
46
|
-
- `--overwrite` / `--force`:`cp/mv/ln` 覆盖目标;`rm` 强制删除
|
|
47
|
-
- `-r` / `--recursive`:`rm/cp` 递归
|
|
48
|
-
- `-p` / `--parents`:`mkdir` 自动创建父目录
|
|
49
|
-
- `-L` / `--follow`:`stat` 跟随末级软链
|
|
50
|
-
- `--token <token>`:读取 personal storage 时携带访问 token
|
|
51
|
-
- `--content-type <mime>`:上传时指定 MIME
|
|
52
|
-
- `--public`:上传后公开可读(personal storage)
|
|
53
|
-
- `--max-bytes <n>`:`cat` 最大直接输出字节数,默认 1MB
|
|
54
|
-
- `--head-bytes <n>`:`cat` 二进制头部字节数,默认 256
|
|
55
|
-
- `--visibility public|private`:`chmod` 可见性
|
|
56
|
-
- `--allow-roles <roles>`:`chmod` 角色约束,逗号分隔
|
|
57
|
-
- `-m aid:<aid>:<perms>` / `-x aid:<aid>`:`setfacl` 增删 ACL
|
|
58
|
-
- `--source <AID>:<path>` / `--volume <id>`:`mount` 来源
|
|
59
|
-
- `--expires <time>`:`mount/token/ACL` 过期时间,Unix 秒或 ISO 日期
|
|
60
|
-
- `--require-approval`:挂载需要来源 owner 审批
|
|
61
|
-
- `--max-uses <n>`:ACL 最大使用次数
|
|
62
|
-
- `--max-reads <n>`:访问 token 最大读取次数
|
|
63
|
-
- `--readonly` / `--readwrite`:挂载为只读或读写
|
|
64
|
-
- `--name <glob>` / `--type <f|d|l>`:`find` 名称或类型过滤
|
|
65
|
-
- `--size <expr>` / `--mtime <expr>`:`find` 大小或修改时间过滤
|
|
66
|
-
|
|
67
|
-
## 示例
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
ec fs ls alice.agentid.pub:/private/
|
|
71
|
-
ec fs cat alice.agentid.pub:/private/notes.md
|
|
72
|
-
ec fs cp ./report.md alice.agentid.pub:/private/report.md
|
|
73
|
-
ec fs cp alice.agentid.pub:/private/report.md ./report.md
|
|
74
|
-
ec fs cp alice.agentid.pub:/private/a.md bob.agentid.pub:/inbox/a.md
|
|
75
|
-
ec fs mkdir -p alice.agentid.pub:/private/reports/
|
|
76
|
-
ec fs ln -s alice.agentid.pub:/private/report.md alice.agentid.pub:/public/report.md
|
|
77
|
-
ec fs chmod +r alice.agentid.pub:/public/report.md
|
|
78
|
-
ec fs setfacl alice.agentid.pub:/private/report.md -m aid:bob.agentid.pub:r
|
|
79
|
-
ec fs token issue alice.agentid.pub:/public/report.md --expires 2026-12-31
|
|
80
|
-
ec fs find alice.agentid.pub:/private/ --name "*.md"
|
|
81
|
-
ec fs rm alice.agentid.pub:/private/report.md
|
|
82
|
-
ec fs df alice.agentid.pub:
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
群 AID 与个人 AID 写法相同:
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
ec fs ls g-team.agentid.pub:/archive/
|
|
89
|
-
ec fs cp ./weekly.md g-team.agentid.pub:/archive/weekly.md
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
## 路由规则
|
|
93
|
-
|
|
94
|
-
CLI 读取目标 AID 的 `agent.md`:
|
|
95
|
-
|
|
96
|
-
- `type: group` 走群文件后端
|
|
97
|
-
- 其他类型走个人 storage 后端
|
|
98
|
-
- 读取失败时先按个人 storage 尝试,并给出警告
|
|
99
|
-
|
|
100
|
-
权限由后端判断。CLI 只携带操作者、目标 AID、路径和操作。
|
|
101
|
-
|
|
102
|
-
## 能力边界
|
|
103
|
-
|
|
104
|
-
- `ln -s` 只在 personal storage 创建软链;group fs facade 暂无 symlink 接口。
|
|
105
|
-
- `chmod` 只映射到 personal storage 的 `setVisibility`;group fs facade 暂无 chmod/setVisibility 接口。
|
|
106
|
-
- `setfacl/getfacl/token/approve/reject` 只接 personal storage;group fs facade 暂无对应接口。
|
|
107
|
-
- personal storage 的 `mv` 仅支持同 owner;跨 owner 请先 `cp` 再 `rm`。
|
|
108
|
-
- personal/group 混合远程 `cp/mv` 不支持;请先下载到本地再上传。
|
|
109
|
-
|
|
110
|
-
需要底层调试时可用 `ec storage`。日常文件操作优先使用 `ec fs`。
|
|
1
|
+
# ec fs — AUN 文件系统
|
|
2
|
+
|
|
3
|
+
`ec fs` 是个人空间和群空间的统一文件入口。群空间也用 `ec fs`,没有 `ec group fs`。
|
|
4
|
+
|
|
5
|
+
路径格式:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
<AID>:<absolute-path>
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
无 `:` 的路径是本地路径。操作者身份用 `--as <aid>`,agent 会话内通常由 `EVOLCORE_SELF_AID` 注入,可省略。
|
|
12
|
+
|
|
13
|
+
## 已实现命令
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
ec fs ls <AID>:<path> # 列目录
|
|
17
|
+
ec fs cat <AID>:<path> # 输出文本文件;二进制/大文件返回头部摘要
|
|
18
|
+
ec fs cp <local> <AID>:<path> # 上传
|
|
19
|
+
ec fs cp <AID>:<path> <local> # 下载
|
|
20
|
+
ec fs cp <AID>:<path> <AID>:<path> # 远程复制(同后端)
|
|
21
|
+
ec fs stat [-L] <AID>:<path> # 查看节点元数据(默认不跟随软链,-L 跟随)
|
|
22
|
+
ec fs lstat <AID>:<path> # 查看节点本身(不跟随末级软链)
|
|
23
|
+
ec fs mv <AID>:<path> <AID>:<path> # 移动/改名(同后端)
|
|
24
|
+
ec fs rm [-r] <AID>:<path> # 删除文件或目录
|
|
25
|
+
ec fs mkdir [-p] <AID>:<path> # 创建目录
|
|
26
|
+
ec fs ln -s <target> <AID>:<path> # 创建软链(personal storage)
|
|
27
|
+
ec fs chmod [mode] <AID>:<path> # 切换公开/私有(personal storage)
|
|
28
|
+
ec fs setfacl <AID>:<path> -m|-x ... # 设置/移除 ACL(personal storage)
|
|
29
|
+
ec fs getfacl <AID>:<path> # 查看 ACL(personal storage)
|
|
30
|
+
ec fs token issue|revoke|ls <path> # 管理访问 token(personal storage)
|
|
31
|
+
ec fs find <AID>:<path> [filters] # 查找节点
|
|
32
|
+
ec fs df <AID>: # 查看容量/配额
|
|
33
|
+
ec fs mount <target> --volume <id> # 挂载实体卷
|
|
34
|
+
ec fs mount <target> --source <src> # 挂载远程子树
|
|
35
|
+
ec fs approve <AID>:<path> # 批准待审挂载(personal storage)
|
|
36
|
+
ec fs reject <AID>:<path> # 拒绝待审挂载(personal storage)
|
|
37
|
+
ec fs umount <AID>:<path> # 卸载挂载点
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
通用选项:
|
|
41
|
+
|
|
42
|
+
- `--format json`:结构化输出
|
|
43
|
+
- `--as <aid>`:显式指定操作者
|
|
44
|
+
- `--aun-path <path>`:指定 AUN keystore 根
|
|
45
|
+
- `--app <name>`:指定 AUN app slot
|
|
46
|
+
- `--overwrite` / `--force`:`cp/mv/ln` 覆盖目标;`rm` 强制删除
|
|
47
|
+
- `-r` / `--recursive`:`rm/cp` 递归
|
|
48
|
+
- `-p` / `--parents`:`mkdir` 自动创建父目录
|
|
49
|
+
- `-L` / `--follow`:`stat` 跟随末级软链
|
|
50
|
+
- `--token <token>`:读取 personal storage 时携带访问 token
|
|
51
|
+
- `--content-type <mime>`:上传时指定 MIME
|
|
52
|
+
- `--public`:上传后公开可读(personal storage)
|
|
53
|
+
- `--max-bytes <n>`:`cat` 最大直接输出字节数,默认 1MB
|
|
54
|
+
- `--head-bytes <n>`:`cat` 二进制头部字节数,默认 256
|
|
55
|
+
- `--visibility public|private`:`chmod` 可见性
|
|
56
|
+
- `--allow-roles <roles>`:`chmod` 角色约束,逗号分隔
|
|
57
|
+
- `-m aid:<aid>:<perms>` / `-x aid:<aid>`:`setfacl` 增删 ACL
|
|
58
|
+
- `--source <AID>:<path>` / `--volume <id>`:`mount` 来源
|
|
59
|
+
- `--expires <time>`:`mount/token/ACL` 过期时间,Unix 秒或 ISO 日期
|
|
60
|
+
- `--require-approval`:挂载需要来源 owner 审批
|
|
61
|
+
- `--max-uses <n>`:ACL 最大使用次数
|
|
62
|
+
- `--max-reads <n>`:访问 token 最大读取次数
|
|
63
|
+
- `--readonly` / `--readwrite`:挂载为只读或读写
|
|
64
|
+
- `--name <glob>` / `--type <f|d|l>`:`find` 名称或类型过滤
|
|
65
|
+
- `--size <expr>` / `--mtime <expr>`:`find` 大小或修改时间过滤
|
|
66
|
+
|
|
67
|
+
## 示例
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
ec fs ls alice.agentid.pub:/private/
|
|
71
|
+
ec fs cat alice.agentid.pub:/private/notes.md
|
|
72
|
+
ec fs cp ./report.md alice.agentid.pub:/private/report.md
|
|
73
|
+
ec fs cp alice.agentid.pub:/private/report.md ./report.md
|
|
74
|
+
ec fs cp alice.agentid.pub:/private/a.md bob.agentid.pub:/inbox/a.md
|
|
75
|
+
ec fs mkdir -p alice.agentid.pub:/private/reports/
|
|
76
|
+
ec fs ln -s alice.agentid.pub:/private/report.md alice.agentid.pub:/public/report.md
|
|
77
|
+
ec fs chmod +r alice.agentid.pub:/public/report.md
|
|
78
|
+
ec fs setfacl alice.agentid.pub:/private/report.md -m aid:bob.agentid.pub:r
|
|
79
|
+
ec fs token issue alice.agentid.pub:/public/report.md --expires 2026-12-31
|
|
80
|
+
ec fs find alice.agentid.pub:/private/ --name "*.md"
|
|
81
|
+
ec fs rm alice.agentid.pub:/private/report.md
|
|
82
|
+
ec fs df alice.agentid.pub:
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
群 AID 与个人 AID 写法相同:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
ec fs ls g-team.agentid.pub:/archive/
|
|
89
|
+
ec fs cp ./weekly.md g-team.agentid.pub:/archive/weekly.md
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## 路由规则
|
|
93
|
+
|
|
94
|
+
CLI 读取目标 AID 的 `agent.md`:
|
|
95
|
+
|
|
96
|
+
- `type: group` 走群文件后端
|
|
97
|
+
- 其他类型走个人 storage 后端
|
|
98
|
+
- 读取失败时先按个人 storage 尝试,并给出警告
|
|
99
|
+
|
|
100
|
+
权限由后端判断。CLI 只携带操作者、目标 AID、路径和操作。
|
|
101
|
+
|
|
102
|
+
## 能力边界
|
|
103
|
+
|
|
104
|
+
- `ln -s` 只在 personal storage 创建软链;group fs facade 暂无 symlink 接口。
|
|
105
|
+
- `chmod` 只映射到 personal storage 的 `setVisibility`;group fs facade 暂无 chmod/setVisibility 接口。
|
|
106
|
+
- `setfacl/getfacl/token/approve/reject` 只接 personal storage;group fs facade 暂无对应接口。
|
|
107
|
+
- personal storage 的 `mv` 仅支持同 owner;跨 owner 请先 `cp` 再 `rm`。
|
|
108
|
+
- personal/group 混合远程 `cp/mv` 不支持;请先下载到本地再上传。
|
|
109
|
+
|
|
110
|
+
需要底层调试时可用 `ec storage`。日常文件操作优先使用 `ec fs`。
|