Val-sss
a809367b86
feat: persistent SSH session via paramiko
...
- Add kaiwu/tools/ssh_session.py: SSHSession class with connect/exec/upload/download/close
- Integrate into ToolExecutor: ssh_connect/ssh_exec/ssh_upload/ssh_download/ssh_close
- Guardrails apply to remote commands too (rm -rf blocked on SSH)
- Persistent connection: connect once, exec multiple commands without reconnecting
- Supports password auth and SSH key auth
Usage flow:
executor.ssh_connect("183.222.230.89", port=22102, username="linux", password="xxx")
executor.ssh_exec("systemctl status nginx")
executor.ssh_exec("cd /app && cat config.yml")
executor.ssh_close()
311 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-30 02:14:49 +08:00
Val-sss
8fd5275b2e
feat: complete MoE framework — token budget, guardrails, observability, session continuity
...
P1: Token budget tracking (llm/llama_backend.py)
- Auto-count input/output tokens per LLM call
- BudgetExceededError when over limit
- OpenAI API uses real usage data, Ollama estimates
P2: Guardrails (tools/executor.py)
- Block dangerous commands (rm -rf, git push --force, drop database, etc.)
- Protect sensitive files (.env, credentials.json, id_rsa)
- Confine writes to project_root
P3: Execution observability (core/execution_trace.py)
- Structured trace per task (steps, timing, tokens, success)
- Human-readable summary() output
P4: Session continuity (memory/session_md.py)
- Auto-save SESSION.md on exit (recent task summaries)
- Auto-load on next startup into Gate memory_context
- Based on Claude Code 4-Layer Memory + Augment "Session-End Spec Update"
Also fixed: apply_patch method accidentally dropped during executor.py rewrite.
311 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-29 20:52:13 +08:00