feat(cli): base/space 命令 + 执行守则 + eval harness 入仓 + 多轮 eval (0.1.9)

- 新命令: space list/create、base create/delete(实测通过,冒烟覆盖)
- SKILL.md §0 执行守则:完成全部步骤再答复/不谎报/分批/撤销指引
  (snapshot 无恢复 API,用 deactivate+节点改回)
- hint 补 429 限流与超时模式
- evals/ 入仓: 14+6 题 harness 参数化(EVAL_ROOT/EVAL_ENV/EVAL_MODEL/
  EVAL_CFG/auto_skill 触发模式)+ 多轮修正式 eval 与灵活判分
- 判分器加固: workflow list 错误负载不崩、官方 CLI 探测(command -v)不算使用
- 实测: auto 触发批(入仓版重跑) 11/11、99.0% 首试、100% ≤2 次;
  多轮修正 2/2+3/3(修改而非重建);冒烟 85 用例含 token 路由(低权会话)
- 运维事实入档: POST/DELETE /api/plugin 为管理员专属(PAT 403)
This commit is contained in:
yeuimu
2026-09-30 08:12:16 +00:00
parent 517dde9dee
commit c9694511a1
20 changed files with 1607 additions and 9 deletions
@@ -29,6 +29,12 @@ Tokens (`Authorization: Bearer <PAT>`).
**Returns** `201` with `{ id, name, version, ... }` — the plugin ID to use for
enable and install.
**Registering a NEW plugin id**: `POST /api/plugin` (manifest as JSON body) —
**admin-only** (PAT gets 403 `restricted_resource`). Uploading a bundle for an
already-registered id only needs the `plugin_developer` whitelist. Deleting a
plugin (`DELETE /api/plugin/:id`) is likewise admin-only. PAT-only automation
should reuse existing registered ids, or ask an admin to register/delete.
**Security** (7-layer validation):
1. Authentication — valid session cookie required (401 if missing)
2. Developer whitelist — `plugin_developer` table lookup (403 if not whitelisted)
+7
View File
@@ -9,6 +9,13 @@ description: >-
Operate a deployed inkreach-teable instance via the `inkreach-teable` CLI.
Respond in the user's language. Keep answers concise and action-oriented.
## 0. 执行守则
- 多步任务先规划再动手;**完成全部步骤后才给最终答复**,不要中途停止或只给命令不给结果。
- 完成后如实汇报:做了什么、关键命令、结果;**做不到就明说做不到及原因,绝不谎报成功**。
- 长任务(批量记录、多工作流)分批执行,每批确认后再继续。
- **改错了怎么撤销**:workflow 的 snapshot 仅供审计,**没有恢复 API**——用 `workflow deactivate` 止损,再用 `trigger set` / `action update` 改回(节点更新是全图替换,直接改回正确配置即可);整条不要了用 `workflow delete`(软删)。
> **Critical**: the automation engine is **self-built and differs from official
> teable** — the official `teable` CLI corrupts or 404s on automations here.
> Exact key-name differences are in [Key Constraints](#3-key-constraints).
@@ -27,6 +27,15 @@ inkreach-teable auth token delete <id>
- `auth token create` returns the full token **only once**. Default scopes: `automation|read,automation|create,automation|update,automation|delete,table|read,record|read,record|create,record|update`.
## space / base
```bash
inkreach-teable space list
inkreach-teable space create --name "<name>"
inkreach-teable base create --space-id <spaceId> --name "<name>"
inkreach-teable base delete <baseId> # DESTRUCTIVE: soft-deletes all tables in it
```
## base / table / field / record / view
These resources use the official-teable-compatible API. Full guide: [tables-fields.md](tables-fields.md).