From 804ffb5cf074076de882c90573e7ad7f933897af Mon Sep 17 00:00:00 2001 From: Alexander Whitestone Date: Sat, 14 Mar 2026 15:09:28 -0400 Subject: [PATCH] =?UTF-8?q?update:=20kimi-code=20skill,=20fallback=20chain?= =?UTF-8?q?=20=E2=86=92=20groq=20kimi-k2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- channel_directory.json | 2 +- config.yaml | 4 +- memories/MEMORY.md | 4 +- .../autonomous-ai-agents/kimi-code/SKILL.md | 83 +++++++++++++++++++ 4 files changed, 88 insertions(+), 5 deletions(-) create mode 100644 skills/autonomous-ai-agents/kimi-code/SKILL.md diff --git a/channel_directory.json b/channel_directory.json index 0c57dcf..7ab2a17 100644 --- a/channel_directory.json +++ b/channel_directory.json @@ -1,5 +1,5 @@ { - "updated_at": "2026-03-14T14:38:52.799160", + "updated_at": "2026-03-14T15:08:54.695649", "platforms": { "discord": [ { diff --git a/config.yaml b/config.yaml index ac225da..080a586 100644 --- a/config.yaml +++ b/config.yaml @@ -199,8 +199,8 @@ custom_providers: fallback_model: - provider: groq model: llama-3.3-70b-versatile - - provider: kimi-coding - model: kimi-k2.5 + - provider: groq + model: moonshotai/kimi-k2-instruct - provider: custom model: qwen3.5:latest base_url: "http://localhost:11434/v1" diff --git a/memories/MEMORY.md b/memories/MEMORY.md index 7eaa8e3..d0c53c9 100644 --- a/memories/MEMORY.md +++ b/memories/MEMORY.md @@ -1,9 +1,9 @@ -Alexander's token: ~/.config/gitea/token (user: rockachopa). Hermes has own Gitea user "hermes" (id=4), token at ~/.hermes/gitea_token, write collaborator on Timmy-time-dashboard. Manus has Gitea user "manus" (id=3), also write collaborator. Hermes commits as "Hermes Agent " (repo-local git config). Git remote uses hermes token for auth. +Gitea (localhost:3000): Users: rockachopa(admin), hermes(id=4), manus(id=3), kimi(id=5). Repos: rockachopa/Timmy-time-dashboard, rockachopa/hermes-agent (sovereign fork), rockachopa/hermes-config. Hermes token: ~/.hermes/gitea_token. Alex token: ~/.config/gitea/token. § Timmy architecture plan: Replace hardcoded _PERSONAS and TimmyOrchestrator with YAML-driven agent config (agents.yaml). One seed class, all differentiation via config. User wants to update YAML files, not Python, to add capabilities. Key files to refactor: agents/timmy.py, agents/base.py, tools_delegation/__init__.py, tools_intro/__init__.py. SubAgent class stays mostly as-is, just reads from YAML. Routing should be config-based pattern matching, not LLM calls. Per-agent model assignment (big model for orchestrator/code/research, small for simple tasks). qwen3:30b pulling as primary local model (~18GB, MoE 3B active). § Hermes-Timmy workspace set up at ~/Timmy-Time-dashboard/workspace/. Flat file correspondence journal (correspondence.md), inbox/ (Hermes→Timmy), outbox/ (Timmy→Hermes), shared/ (handoff patterns, reference docs). Protocol: append-only, timestamped. Plan: plug into Timmy's heartbeat tick so he auto-replies to new correspondence. § -2026-03-14 work session: Fixed 3 Timmy issues (#39 corrupted memory state, #36 event loop bug, #40 fact distillation). Created 5 new issues (#36-#40), closed 4 stale ones (#10-12, #27). QA: timmy interview 8/8 pass, timmy tick gives grounded responses. PRs #41-#43 merged to main. Next big target: #37 memory consolidation (three stores → one). +2026-03-14: Fixed Timmy issues #36-#40, PRs #41-#43 merged. Built voice loop. Added Hermes fallback chain (Anthropic→Groq→Kimi→Local) with recovery-up. Set up source control: hermes-agent sovereign fork (rebase workflow) + hermes-config repo. GROQ_API_KEY + KIMI_API_KEY in env. hermes-sync script at ~/.hermes/bin/. § 2026-03-14 voice session: Built sovereign voice loop (timmy voice). Piper TTS + Whisper STT + Ollama, all local. Fixed event loop (persistent loop for MCP sessions), markdown stripping for TTS, MCP noise suppression, clean shutdown hooks. 1234 tests passing. Alexander wants to eventually train a custom voice using his own voice samples — noted for future. \ No newline at end of file diff --git a/skills/autonomous-ai-agents/kimi-code/SKILL.md b/skills/autonomous-ai-agents/kimi-code/SKILL.md new file mode 100644 index 0000000..89c45f1 --- /dev/null +++ b/skills/autonomous-ai-agents/kimi-code/SKILL.md @@ -0,0 +1,83 @@ +--- +name: kimi-code +description: Delegate coding tasks to Kimi Code CLI (Moonshot). Non-interactive print mode for automation. Subscription-based OAuth. kimi-k2.5 under the hood. +version: 1.0.0 +author: Hermes Agent +license: MIT +metadata: + hermes: + tags: [Coding-Agent, Kimi, Moonshot, K2.5, Automation] + related_skills: [claude-code, codex, hermes-agent] + force: true +--- + +# Kimi Code CLI + +Delegate coding tasks to Kimi Code CLI via the Hermes terminal. Powered by kimi-k2.5 with 262K context. OAuth subscription — no API key needed. + +## Prerequisites + +- Kimi CLI installed (check `which kimi`) +- Logged in: `kimi login` +- Config at `~/.kimi/config.toml` + +## One-Shot Tasks (Print Mode) + +``` +terminal(command="kimi --print -p 'Fix the XSS vulnerability in swarm_live.html by sanitizing innerHTML'", workdir="~/project", timeout=120) +``` + +Quiet mode (final answer only, no tool traces): +``` +terminal(command="kimi --quiet -p 'Give me a git commit message for the current changes'", workdir="~/project", timeout=60) +``` + +## Key Flags + +| Flag | Effect | +|------|--------| +| `--print` | Non-interactive mode, exits after executing | +| `-p "prompt"` | Pass the instruction (also `-c`) | +| `--quiet` | Shortcut for --print --output-format text --final-message-only | +| `--yolo` | Auto-approve all operations (implicit in --print) | +| `-w DIR` | Set working directory | +| `--output-format stream-json` | JSONL output for programmatic parsing | +| `--final-message-only` | Only output the final assistant message | + +## Background Mode (Long Tasks) + +``` +# Start in background +terminal(command="kimi --print -p 'Refactor the auth module to use JWT'", workdir="~/project", background=true, timeout=300) +# Returns session_id + +# Monitor +process(action="poll", session_id="") +process(action="wait", session_id="", timeout=300) +``` + +## Parallel Work with Git Worktrees + +``` +# Create worktrees for parallel tasks +terminal(command="git worktree add -b fix/issue-47 /tmp/timmy-47 main", workdir="~/project") +terminal(command="git worktree add -b fix/issue-25 /tmp/timmy-25 main", workdir="~/project") + +# Fire off Kimi in each (background) +terminal(command="kimi --print -p 'Fix XSS in swarm_live.html. Commit when done.'", workdir="/tmp/timmy-47", background=true, timeout=180) +terminal(command="kimi --print -p 'Fix bare excepts in src/. Commit when done.'", workdir="/tmp/timmy-25", background=true, timeout=180) + +# Monitor both +process(action="list") +process(action="wait", session_id="", timeout=180) +``` + +## Rules + +1. **Use `--print` for automation** — default mode is interactive and blocks +2. **No PTY needed** — unlike Codex, print mode works without a pseudo-terminal +3. **OAuth-based** — subscription, not API key. Must be logged in via `kimi login` +4. **262K context** — kimi-k2.5 has huge context, good for large codebase tasks +5. **Background for long tasks** — use `background=true` + `process(action="wait")` +6. **Parallel is fine** — run multiple Kimi processes across worktrees +7. **Set timeout generously** — Kimi can take 1-3 minutes for complex tasks