Commit Graph
22 Commits
Author SHA1 Message Date
jiang d58bd19039 feat(agent): unify models and validate OpenCode providers
Generate chat, task and learning models from agent-models.json.
Use WaterNetwork fast/expert models with 272k context and validate
upstream names before readiness. Add an isolated model check command
with signal-safe cleanup and plugin, Skill and MCP management docs.

Verified in isolation: type checks, 26 focused tests and both model
catalog checks; no model inference requests.
2026-10-09 11:28:37 +08:00
jiang 75d8d526f9 feat(agent): add external MCP client support
Reuse OpenCode 2 HTTP/stdio clients with per-session read-only grants,
native approval and sanitized owner-scoped MCP status. Narrow the
environment inherited by trusted local MCP processes.

Validated in an isolated checkout with bun run check and 20 focused tests.
2026-10-08 18:36:07 +08:00
jiang 7383ed6d13 feat(agent): migrate OpenCode 2 runtime and sandbox tools
Upgrade the runtime and native plugin API to OpenCode 2.0.24. Restore
session-scoped learning, credential renewal, typed project queries and
controlled frontend actions from the legacy Agent.

Replace host Shell execution with an approved Landlock/seccomp executor
and persistent per-session workspaces. Add typed Bocha search and Tianditu
geocoding bridges using the owning session credential. Require a working
kernel sandbox before startup and persist workspace files in deployments.

Validation completed before this commit: TypeScript checks, 150 Bun tests,
Docker build and UID 10001 sandbox execution, native Shell approval and
session recovery. Tianditu succeeded; Bocha currently reports exhausted
account quota. Unrelated investigation-report contract work is excluded.
2026-10-08 15:46:37 +08:00
jiang e0d37f9da9 feat(tasks): enforce dynamic execution plans 2026-09-24 16:36:12 +08:00
jiang b31033e9ce feat(agent): add controlled task execution 2026-09-24 04:19:02 +08:00
jiang 9faed59f23 feat(context): verify product session scope 2026-09-22 10:43:36 +08:00
jiang 88b41ba04c refactor(scada): use canonical device identifiers
Generic Container CI/CD / test-build-publish (push) Successful in 32s
Agent CI/CD / build-test-publish-and-deploy (push) Successful in 32s
2026-09-08 18:18:51 +08:00
jiang b33d950d2b fix: avoid embedded opencode port conflicts 2026-08-19 16:56:25 +08:00
jiang f0bf667d02 fix(agent): harden permissions and startup readiness 2026-08-18 17:10:48 +08:00
jiang a37f06352c fix: continue agent after denied interactions 2026-07-28 18:08:08 +08:00
jiang 432edaaf2f feat: add SCADA frontend action bridge 2026-07-20 19:57:25 +08:00
jiang 72019ac1f2 chore: disable external and frontend tools 2026-07-20 17:27:46 +08:00
jiang 155513fdbc refactor(agent)!: focus tools on SCADA 2026-07-15 18:30:58 +08:00
jiang 8a21908785 feat(agent): add typed server API tools 2026-07-15 10:44:07 +08:00
jiang f3f873e3c4 fix(agent): load frontend action plugin 2026-07-14 18:17:55 +08:00
jiang 6b45e7c40c feat(agent): add frontend action bridge 2026-07-13 17:26:03 +08:00
jiang 7f34098cf5 refactor(chat): split stream helpers 2026-07-07 12:05:46 +08:00
jiang 900e60460c fix(chat): avoid implicit stream reuse 2026-07-07 11:23:07 +08:00
jiang 7c2eae3fd7 fix(agent): stabilize stream token output 2026-07-03 16:10:26 +08:00
jiang 9a0dea799b fix(agent): smooth Chinese stream chunks 2026-07-02 20:22:47 +08:00
jiang ca075d718e feat(agent): add pressure trend demo 2026-06-30 20:01:34 +08:00
jiang e83ac54a9e feat: initialize experimental agent repo 2026-06-30 14:03:49 +08:00