Releases: wesleysimplicio/simplicio-dev-cli
v0.2.12 — zero-step auto-bootstrap
pip install simplicio-cli → just works.
The first time simplicio is invoked after install, if ~/.claude/ is present and the hook is missing, the skill + UserPromptSubmit hook are installed automatically. PEP 517 wheels can't run code on pip install, so the bootstrap happens on first CLI use — the closest equivalent that works on every machine.
```bash
pip install simplicio-cli
simplicio smoke # ← also installs skill + hook (idempotent)
```
- Idempotent — never double-writes
- Opt-out: `export SIMPLICIO_SKIP_AUTO_INIT=1`
- Subcommands `init` / `detect` excluded (no loops)
- Errors are caught + logged; the CLI never breaks because of auto-activation
New README sections explain the runtime flow (skill = semantic layer, hook = deterministic layer), why UserPromptSubmit is the right pre-hook (not PreToolUse), and a disable/re-enable matrix.
Available on PyPI: https://pypi.org/project/simplicio-cli/0.2.12/
See CHANGELOG.md for the full entry.
v0.2.11 — simplicio init + detect
One-shot installer that drops the skill and a UserPromptSubmit hook into ~/.claude/.
simplicio init— installs~/.claude/skills/simplicio-cli/SKILL.md+~/.claude/hooks/simplicio-userpromptsubmit.sh+ merges the hook entry into~/.claude/settings.json(with.bakbackup). Idempotent.--dry-runshows the plan.simplicio detect— pure-Python heuristic (no LLM) that scores a prompt for code-edit intent and emits a[SIMPLICIO_PROMPT_HINT]block on stderr above the threshold.- Heavy imports (
numpy, provider SDKs) made lazy:init/detect/--helpstart instantly.
See CHANGELOG.md for the full entry.
v0.2.10 — Claude Code skill
Adds the simplicio-cli skill so Claude Code auto-considers simplicio task for code-edit prompts on a known file.
.skills/simplicio-cli/SKILL.md+ global mirror at~/.claude/skills/simplicio-cli/SKILL.md- Pushy trigger description covering explicit invocations (
$simplicio, "use simplicio") plus implicit cues (small/local model, verify-loop / pass-rate / 6-layer keywords) - Registered in
.skills/README.md
See CHANGELOG.md for the full entry.
v0.2.9 - 4-quadrant bench + wider multi-model run (Q4 76%)
What's new
4-quadrant benchmark matrix landed: every combination of simplicio prompt yes/no x agent loop yes/no measured side-by-side, so the contribution of each axis is now isolable.
Headline (wider run, 3 models x 10 cases, 25 observed tuples)
| Quadrant | Prompt | Execution | Pass rate | Tokens / pass | ms / pass |
|---|---|---|---|---|---|
| Q1 | raw goal | 1-shot | 0/25 (0%) | 22,387 | 817,437 |
| Q2 | simplicio 6-layer | 1-shot | 16/25 (64%) | 1,093 | 14,797 |
| Q3 | raw goal | loop w/ feedback | 11/25 (44%) | 7,154 | 106,382 |
| Q4 | simplicio 6-layer | loop w/ feedback | 19/25 (76%) | 1,914 | 24,170 |
Q4 (composition) wins on every axis: pass rate, tokens per passing case, and wall-clock per passing case.
Hypothesis verdicts (threshold |delta| >= 5 pts)
- Loop alone closes the gap. Q4 - Q3 = +32 pts -> REJECTED.
- Simplicio alone is enough. Q4 - Q2 = +12 pts -> REJECTED.
- Gains stack linearly. Q4 - linear = -32 pts -> REJECTED.
Both axes contribute, neither is redundant, and they compose sub-linearly (there is interaction, not double-counting).
Added
- New 4-quadrant harness:
bench/run_4quadrant.py. - Focused run report:
bench/results_4quadrant.md(gemma-3-4b, 5 cases, max_iters=3). - Wider run report:
bench/results_4quadrant_wide.md(3 models x 10 cases, max_iters=5, qwen partial). - Raw artefacts:
bench/results_4quadrant.json+bench/results_4quadrant_wide.json. - PDFs + SVG charts under
bench/charts/4q_*.svgandbench/results_4quadrant{,_wide}.pdf. - Methodology doc:
docs/benchmark-4quadrant.md.
Changed
pyproject.toml: 0.2.8 -> 0.2.9.- README: new "Run 1 - focused" / "Run 2 - wider multi-model" structure.
Notes
- The wider run was killed mid-execution;
qwen-2.5-7bcovers only the first 5 of 10 cases andclaude-3.5-haikuwas never reached. Aggregate treats every observed (model, case, quadrant) tuple as one observation. Reproduce instructions are insidebench/results_4quadrant_wide.md.
Install
pip install simplicio-cli==0.2.9
# or for benchmark extras (fpdf2):
pip install "simplicio-cli[bench]==0.2.9"v0.2.3 — English translation (breaking)
Breaking change — everything is English now
Mixed-language internals were hurting onboarding. v0.2.3 translates the
entire codebase: docstrings, comments, identifiers, CLI flags, prompt
template, and bench case data.
CLI flag renames
| Old | New |
|---|---|
--alvo |
--target |
--criterios |
--criteria |
--restricoes |
--constraints |
objetivo (positional) |
goal |
Internal API renames (for anyone importing simplicio.*)
prompt.montar→prompt.build_promptproviders.gerar→providers.generateprecedent.montar_bloco_precedente→precedent.build_precedent_blockprecedent.grep_candidatos→precedent.grep_candidatesskill_router.montar_bloco_skill→skill_router.build_skill_block
Bench JSON key renames
objetivo/alvo/criterios/restricoes → goal/target/criteria/constraints
in both bench/cases.json and bench/cases_offline.json.
Prompt template
Emits [GOAL] / [TARGET] / [CONTRACT] / [OUTPUT] blocks instead of the
Portuguese [OBJETIVO] / [ALVO] / [CONTRATO] / [SAIDA].
Install
pip install simplicio-cli==0.2.3Benchmark numbers and pipeline behavior unchanged from v0.2.2.
v0.2.2 — Cost measurement: tokens + wall-clock
Highlights — measured, not estimated
| Metric | Without simplicio | With simplicio | Δ |
|---|---|---|---|
| Pass rate (156 checks) | 35% | 90% | +55 pts (+156%) |
| Wall-clock / run | 12.4s | 9.9s | −21% |
| Tokens / run | 759 | 770 | +1% |
| DIFF block present | 0% | 100% | — |
| Target file mentioned | 0% | 96% | — |
Same model, same task, same provider. Only the prompt structure changes.
Per model
- Gemma 3 12B IT: 34% → 92% (+58)
- Llama 3.1 8B Instruct: 36% → 90% (+54)
- Qwen 2.5 7B Instruct: 34% → 88% (+54)
What changed
bench/run_offline.pynow capturesusage.{prompt,completion,total}_tokensandtime.perf_counter()elapsed per call.bench/results.mdgained "Cost — tokens & wall-clock" section.- README updated with honest cost numbers.
Install
pip install simplicio-cli==0.2.2Full diff and notes in CHANGELOG.md.
v0.2.0 — bench v2 + PyPI publish
Highlights
- Published on PyPI: `pip install simplicio-cli` → https://pypi.org/project/simplicio-cli/0.2.0/
- Bench v2: 3 models · 10 cases · 156 checks · SVG charts.
Numbers (same model, different prompt)
| Model | Without | With simplicio | Gain |
|---|---|---|---|
| Llama 3.1 8B Instruct | 34% | 98% | +64 pts |
| Gemma 3 12B IT | 38% | 94% | +56 pts |
| Qwen 2.5 7B Instruct | 38% | 80% | +42 pts |
| Average | 37% | 91% | +54 pts (+145%) |
Output-quality signals
- DIFF block present: 0% → 100%
- Target file mentioned: 3% → 96%
Install
```bash
pip install simplicio-cli
```
Full report: bench/results.md · bench/results.pdf