Instructions to use bfuzzy1/TinyGuide with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use bfuzzy1/TinyGuide with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("bfuzzy1/TinyGuide") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use bfuzzy1/TinyGuide with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "bfuzzy1/TinyGuide"
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "bfuzzy1/TinyGuide" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use bfuzzy1/TinyGuide with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "bfuzzy1/TinyGuide"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "bfuzzy1/TinyGuide" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "bfuzzy1/TinyGuide", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use bfuzzy1/TinyGuide with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "bfuzzy1/TinyGuide"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default bfuzzy1/TinyGuide
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use bfuzzy1/TinyGuide with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "bfuzzy1/TinyGuide"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "bfuzzy1/TinyGuide" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Update README.md
Browse files
README.md
CHANGED
|
@@ -1,3 +1,60 @@
|
|
| 1 |
---
|
|
|
|
| 2 |
license: apache-2.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
library_name: mlx
|
| 3 |
license: apache-2.0
|
| 4 |
+
license_link: https://huggingface.co/Qwen/Qwen3-0.6B/blob/main/LICENSE
|
| 5 |
+
base_model: Qwen/Qwen3-0.6B
|
| 6 |
+
pipeline_tag: text-generation
|
| 7 |
+
tags:
|
| 8 |
+
- mlx
|
| 9 |
---
|
| 10 |
+
|
| 11 |
+
# TinyGuide Coach
|
| 12 |
+
|
| 13 |
+
A tiny highly expiremental 0.6B coding agent coach that runs on your laptop. TinyGuide sits in Claude
|
| 14 |
+
Code's **PreToolUse** hook before every `Edit`, `Write`, or `Bash`, it reads the session state and decides whether to say something. Most of the time it stays quiet. When the agent is about to edit a file it never read, re-run a command that already failed, or finalize without testing, it drops **one short sentence**
|
| 15 |
+
of guidance into the agent's context.
|
| 16 |
+
|
| 17 |
+
Fine tuned from Qwen3-0.6B. Small enough to run locally on every tool call.
|
| 18 |
+
|
| 19 |
+
This repo holds the fp16 fused weights (bf16, ~1.1 GB) and the Claude Code hook that wires them in.
|
| 20 |
+
|
| 21 |
+
## Run it
|
| 22 |
+
|
| 23 |
+
Serve with mlx_lm, then point the hook at it (`infer.py` POSTs to `http://127.0.0.1:8080`):
|
| 24 |
+
|
| 25 |
+
```bash
|
| 26 |
+
pip install mlx-lm
|
| 27 |
+
mlx_lm.server --model <this-repo-or-local-path> --port 8080
|
| 28 |
+
```
|
| 29 |
+
|
| 30 |
+
Direct generation:
|
| 31 |
+
|
| 32 |
+
```python
|
| 33 |
+
from mlx_lm import load, generate
|
| 34 |
+
m, tok = load("<this-repo-or-local-path>")
|
| 35 |
+
print(generate(m, tok, prompt, max_tokens=24, temp=0.0))
|
| 36 |
+
```
|
| 37 |
+
|
| 38 |
+
## Wire into Claude Code
|
| 39 |
+
|
| 40 |
+
Files in `claude-code/`:
|
| 41 |
+
|
| 42 |
+
| File | Role |
|
| 43 |
+
|------|------|
|
| 44 |
+
| `hook_pretooluse.py` | the PreToolUse hook: rebuilds state from the transcript, asks the server, prints advisory context |
|
| 45 |
+
| `infer.py` | client to the local mlx_lm.server; strips `<think>`, validates the hint |
|
| 46 |
+
| `format_prompt.py` | shared train/inference prompt builder |
|
| 47 |
+
| `build_from_raw.py` | transcript parser + state machine (`iter_pairs`, `_advance`) |
|
| 48 |
+
| `clean_output.py` | `KNOWN_HINTS` + output validation |
|
| 49 |
+
| `settings.snippet.json` | the `PreToolUse` config to merge into `~/.claude/settings.json` |
|
| 50 |
+
|
| 51 |
+
Merge `settings.snippet.json` into `~/.claude/settings.json`, fixing the two absolute paths to your venv python and this folder. The hook fires on `Edit|Write|Bash`.
|
| 52 |
+
|
| 53 |
+
### Runtime cooldown
|
| 54 |
+
|
| 55 |
+
Enforced at runtime in the hook via `/tmp/tinyguide_cooldown.json`:
|
| 56 |
+
|
| 57 |
+
- `MIN_CALLS_BETWEEN = 3` tool calls between hints
|
| 58 |
+
- `MAX_PER_SESSION = 5` cap per session
|
| 59 |
+
|
| 60 |
+
You can tune these in `hook_pretooluse.py` pacing is a policy.
|