← ClaudeAtlas

gen-rustlisted

Sync Rust implementation with Python changes (exclude UI/login) by reviewing recent changes, mapping modules, porting logic, and updating tests.
Pythoughts-labs/pythinker-code · ★ 18 · AI & Automation · score 74
Install: claude install-skill Pythoughts-labs/pythinker-code
# gen-rust Use this skill when the user wants Rust (kagent/pythinker-core/pythinker-host) to stay logically identical to Python (pythinker_code/pythinker_core/pythinker_host), excluding UI and login/auth. This includes code and tests: Rust behavior and tests must be fully synchronized with Python changes. Note: The Rust binary is named `kagent`. User-facing CLI/output text in Rust must use `kagent` instead of `pythinker` to match the Rust command name. ## Quick workflow 1) **Build a complete change inventory** Review recent changes to understand what needs syncing: ```sh # Check staged changes git diff --cached --name-only git diff --cached -- src packages # Check recent commits git log --oneline -20 -- src packages git diff HEAD~20..HEAD -- src packages # Review CHANGELOG.md for context head -50 CHANGELOG.md ``` 2) **Classify changes** - Exclude UI and login/auth changes (Shell/Print/ACP UI, login/logout commands). - Everything else must be mirrored in Rust. - Keep a small checklist: file -> change summary -> Rust target -> status. 3) **Map Python -> Rust** Common mappings: - `src/pythinker_code/llm.py` -> `rust/kagent/src/llm.rs` - `src/pythinker_code/soul/*` -> `rust/kagent/src/soul/*` - `src/pythinker_code/tools/*` -> `rust/kagent/src/tools/*` - `src/pythinker_code/utils/*` -> `rust/kagent/src/utils/*` - `src/pythinker_code/wire/*` -> `rust/kagent/src/wire/*` - `packages/pythinker-core/*` -> `rust/pythinker-core/*` - `packages/pythinker-host/*` -> `rust/pythin