rtk-cli
Use when running shell commands in agent sessions to cut Bash output tokens, or when the user asks to install/configure RTK, reduce context from git/test/lint commands, or use rtk git/rg/cargo wrappers. Triggers on "rtk", "token savings", "compact git status", or heavy command output eating context.
- License 许可
- MIT
- 最近更新
- 2026-11-12
- Stars
- ★ 1
- Forks
- 0
01 前言 Front Matter
- name
- rtk-cli
- description
- Use when running shell commands in agent sessions to cut Bash output tokens, or when the user asks to install/configure RTK, reduce context from git/test/lint commands, or use rtk git/rg/cargo wrappers. Triggers on "rtk", "token savings", "compact git status", or heavy command output eating context.
03 SKILL.md 正文
rtk-cli
RTK is a Rust CLI proxy that filters and compresses common dev command output (often 60–90% fewer tokens) before it reaches the model. It complements Slopgate: Slopgate enforces quality on edits; RTK shrinks read-only shell output.
Upstream: https://github.com/rtk-ai/rtk
Install
# macOS
brew install rtk
# Linux/macOS (installs to ~/.local/bin)
curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh
# From source
cargo install --git https://github.com/rtk-ai/rtk
Verify: rtk --version and rtk gain. If rtk gain fails, you may have the unrelated crates.io "rtk" package — use the git install above.
Harness setup (hooks owned by RTK, not the bundle)
Run after slopgate install … when both are used. The bundle does not symlink hooks.json or settings.json.
| Harness | Command |
|---|---|
| Claude Code / Copilot | rtk init -g |
| Cursor | rtk init -g --agent cursor |
| Codex | rtk init -g --codex |
| OpenCode | rtk init -g --opencode |
| Gemini CLI | rtk init -g --gemini |
Restart the harness after init. Uninstall RTK hooks only: rtk init -g --uninstall.
Scope: auto-rewrite applies to Bash/shell tool commands only. Built-in Read / Grep / Glob (Claude/Cursor) are not rewritten — use shell (cat/head, rtk rg, find) or explicit rtk read / rtk grep / rtk find when you want compact output.
Slopgate + RTK together
slopgate install all(or per-platform) — quality guardrails viaslopgate handle.rtk init -g(with the right--agent/--codex/--opencodeflags) — Bash rewrite tortk …equivalents.- Confirm both hook entries exist (e.g. Cursor
~/.cursor/hooks.json: Slopgateslopgate handle+ RTKpreToolUserewrite).
Slopgate rules already assume RTK for search in several shards (rtk rg, not GNU grep for ripgrep flags). See ~/.claude/rules/search-navigation.md when linked from the bundle.
High-value commands
rtk git status
rtk git diff
rtk git log -n 20
rtk rg "pattern" src/
rtk read path/to/file.rs
rtk cargo test
rtk pytest
rtk ruff check
rtk docker ps
rtk gain # savings stats
rtk discover # missed rewrite opportunities
Global flags: -u / --ultra-compact for extra compression; -v for more detail.
Config
~/.config/rtk/config.toml (macOS also ~/Library/Application Support/rtk/config.toml):
[hooks]
exclude_commands = ["curl"] # never rewrite these
[tee]
enabled = true
mode = "failures" # save full output on failure
Per-command bypass: RTK_DISABLED=1 git status runs raw.
Telemetry
Opt-in only. rtk telemetry status | enable | disable | forget. Set RTK_TELEMETRY_DISABLED=1 to block regardless of consent.
When not to use RTK
- You need full, unfiltered output for debugging (use raw command or
RTK_DISABLED=1). - Piped workflows where rewriting the left side would break format expectations (RTK skips some
find/fdpipe cases). - Replacing Slopgate lint/hook enforcement — use
slopgate lint checkand hook denials for that.
04 同仓库更多 Skills
type-strictness
Enforce strict type compliance by eliminating `Any` types and `# type: ignore` comments. Use when: (1) Editing code that contains `Any` as a type annotation (2) Code has `# type: ignore` or `# pyright: ignore` comments (3) User requests type fixes or type strictness enforcement (4) Importing from untyped third-party libraries (5) User asks to "fix types", "remove Any", or "add proper typing" (6) Pyrefly or mypy reports type errors that need resolution (7) Code review reveals weak typing patterns Follows hierarchical resolution: codebase inference → type stubs → library inspection → type guards → casting (last resort).
slopgate-test-extender
Extend Python test suites with parametrization, fixture reuse, and quality enforcement. Use when asked to add tests, extend existing tests, improve test coverage, consolidate duplicate tests, fix test quality issues, or when Slopgate reports untested-production-code, missing test references, or coverage gaps. Triggers on requests like "add tests for X", "extend these tests", "parametrize tests", "consolidate tests", "fix test quality", "improve test coverage", "write tests for this function", "test this module", "behavior tests", "integration tests", "missing tests", "coverage holes", "untested code", or when a hook denies with test-related findings.
slopgate-intelligent-coding-patterns
Pattern-selection playbook for agents editing code with complex branching, stateful parsers/workflows, duplicated skeletons, policy checks, or ordered transforms. Load before refactoring if/elif dispatch chains, boolean-flag state machines, repeated validation predicates, parallel provider/language implementations, or regex/content transformation pipelines. Also load when asked to "apply a design pattern", "which pattern should I use here", "refactor this switch statement", "replace if-elif chain", "state machine pattern", "strategy pattern", "template method", "pipeline pattern", "specification pattern", "dispatch table", "guard clause refactor", "reduce cyclomatic complexity", or when Slopgate fires PY-CODE-014, PY-CODE-017, PY-CODE-018, QUALITY-LINT-001, or PY-QUALITY-010. Use with behavior-locking tests and avoid pattern theater for simple one-off code.
slopgate-hygiene-orchestrator
Orchestrate systematic elimination of linter warnings and errors across Python, TypeScript, and Rust codebases. Use when asked to "clean up lints", "fix all warnings", "run hygiene", "eliminate type errors", "orchestrate code quality fixes", "fix lint errors", "resolve quality gate failures", "pass CI checks", "reduce tech debt", "refactor to pass hooks", or when a Slopgate hook denies with QUALITY-LINT-001, PY-CODE-017, PY-CODE-018, or any collector finding. This skill coordinates multiple code-hygiene-enforcer agents working in parallel on non-conflicting file groupings, tracks progress persistently via JSON exports, and loops until all issues are resolved. CRITICAL: Never run linters directly—always use `slopgate lint check` as the primary gate, discover project-specific tools from config files, and export findings to JSON for tracking.
slopgate-code-smell-utility-locator
Autoactivate when code-smell hooks or reviews mention feature envy, thin wrappers, duplicate helpers, duplicate code, scattered helpers, builders/factories/config/constants/dataclass reuse, PY-CODE-012, PY-CODE-013, QUALITY-LINT-001, or repeated slopgate code-quality denials. Also load when asked to "find existing helpers", "consolidate utilities", "search for duplicate code", "where is this already implemented", "reuse existing logic", "don't duplicate this", "find similar functions", "utility inventory", "code smell radar", or before adding new helpers/wrappers so agents can find existing shared utilities and consolidate instead of duplicating.
slopgate-code-hygiene-refactor
Recovery playbook for Slopgate and project quality failures. Load after hook/lint denials such as PY-CODE-017 flat sibling modules, PY-CODE-018 oversized modules, QUALITY-LINT-001 post-edit quality backstops, PY-QUALITY-010 magic numbers / repeated literals, PY-CODE-012/PY-CODE-013 smell findings, type-suppression bans, duplicate helpers, or repeated hygiene retry loops. Also load when asked to "refactor this module", "split this file", "extract a class", "reduce complexity", "fix god class", "flatten module hierarchy", "move code to a package", "extract helpers", "consolidate duplicates", "replace magic numbers with constants", or when a hook blocks an edit with structural complaints. Focuses on preserving public APIs while refactoring toward packages, cohesive modules, typed seams, and focused tests.