Releases: hackernotfound/dsh-tacit
Release list
v0.6.1
Small fixes to what a profile reads back and to the usage ledger, a live
rehearsal script, and a compatibility check against the host's alpha line.
Upgrading
- Restart
dsh webafter updating; host code only reloads on a restart. - No new settings, routes or storage changes.
Added
pnpm rehearsedrives real headless turns in a throwawayDSH_HOMEand
checks what Tacit learned from them. (#59)
Changed
- The weekly compatibility check also runs against
@deepseek-ai/dsh@alpha. (#57)
Fixed
- Pattern rows whose kinds spell the same thing fold into one row with summed
counts. (#57) - A profile keeps one directive on trial per scope; extra candidates from an
older profile wait in the queue. (#57) - A run that ends right before the harness exits still counts in the Usage
card; the summary is written when the run ends. (#58)
Full diff: v0.6.0...v0.6.1
v0.6.0
One pass over the whole UI: the same card, badge, chip and row idioms on every
surface, fewer visible controls, and a directive receipt you can actually read.
Upgrading
- Restart
dsh webafter updating; host code only reloads on a restart. - No new settings, routes or storage changes.
Changed
- Directive cards carry a status-coloured rail and a pill badge; the receipt
reads as tiles, a lifecycle timeline, trigger chips and an identity grid. (#54) - Every settings row shares one shape, and each checkbox setting is a
whole-sentence clickable label. (#54) - Turn rows lead with the heading and two actions; tools, steps, tokens and
retries read as one quiet dot-separated line under the prompt. (#54) - One rotating chevron marks every card head and disclosure; zero counts are
hidden, and the Learning and Agent guidance heads summarize while collapsed. (#54) - The Improve preview leads with what changed and highlights the proposed
rewrite; the confirm dialog narrows to fit its two buttons. (#54) - Long prompts expand by clicking the text itself; empty states read as quiet
dashed panels. (#54)
Full diff: v0.5.0...v0.6.0
v0.5.0
Everything the review on deepseek-harness discussion #5061
asked for (issues #39 to #44), plus the hardening that went with it.
Upgrading
- Restart
dsh webafter updating; host code only reloads on a restart. - Turn digests are recomputed on first load, so credential masking covers the
retained history too. Nothing to set. - Profiles migrate on read; existing directives gain their provenance fields.
- New setting
reviewCandidates(off by default); new route
/api/tacit/directive-receipt.
Added
- Every directive shows a receipt in Settings: where it came from, its trial,
what its distillation cost, with Copy as JSON; never prompt text. (#49) - Review new directives before their trial: with
reviewCandidateson, a new
directive waits until you press Start trial. (#49) - A removed directive stays removed; the distiller cannot propose it, or a
rewording of it, again. (#49) - Analyzing a turn that already has a report costs nothing; Re-analyze pays
for a fresh one. (#49) - Move to workspace on every directive, and a not seen since chip on a
workspace with no open session. (#48) - Usage card: spend by route and by trigger, a tile for failed or repair calls,
input and output tokens shown apart, the daily cap next to today. (#47) - The trend chips link to How it works §6 and §10. (#46)
- The privacy page states that Tacit sends no telemetry of any kind. (#49)
Changed
- A workspace is one normalised path; a conversation anywhere inside it gets
its directives, deepest workspace first. (#48) - Same-name workspaces are shown to the distiller as
a/webandb/web. (#48) - At most 12 workspaces keep distilled directives; typed ones are never
dropped. (#48) - Removing or switching off a directive reaches conversations already open;
adding one still waits for the next. (#49) - The trend chips say the numbers are a before/after over your own turns, not
a controlled comparison. (#46) - A retired directive reads "corrections rose 10% → 30% during its trial". (#46)
Fixed
- Unticking a candidate frees its scope's trial slot for the next queued
directive. (#49) - Two workspaces sharing a folder name no longer cross-wire directives. (#48)
- A directive for a workspace the evidence never named is dropped and logged,
not applied everywhere. (#48) - A renamed or moved workspace no longer strands its directives; a candidate
there pauses until a session opens in it again. (#48) - ✨ Improve skips background-job notifications and bare "continue" turns when
it gathers context. (#46) - Escape out of a confirm dialog returns focus to the button that opened
it. (#46)
Security
- Credential-shaped strings (API keys, tokens, JWTs, private keys) are masked
as a turn is captured, before anything is stored or sent. (#45) - The steering section states it changes no tool permission, approval or
sandbox policy, and a directive about those is refused. (#45) - Every coach prompt treats its input as evidence, never as instructions. (#45)
Full diff: v0.4.0...v0.5.0
v0.4.0
Changed
- Directive trials are graded on how often you correct the agent; tool errors
alone no longer retire a directive. (#36) - One directive per scope is on trial at a time; the rest wait as queued. (#36)
- A reworded directive keeps its identity and trial; retired ones are
remembered so they are not proposed again. (#36) - The measured trend leads with your correction rate. (#36)
- The cost panel re-reads nothing that has not changed; per-day buckets stop
at 400 days. (#37)
Fixed
- A provider out of credit says so instead of a generic failure. (#37)
- Today no longer loses a run that crossed midnight. (#37)
- The runs filter can ask for running. (#37)
- Learn from my last 20 turns no longer shows a previous batch's figures. (#37)
- The retention selector shows a
costHistoryDaysset by hand in YAML. (#37) - The Pricing rate table stays in the page while collapsed. (#37)
- Tab stays inside the confirm dialog; two accessibility fixes in the run
list. (#37)
Full diff: v0.3.0...v0.4.0
v0.3.0
Added
- Every Tacit model call is metered into a local, content-free usage ledger;
newcostHistoryDays,costWarnDailyUsd,costWarnMonthlyUsd. (#33) - Routes for the ledger and prices,
/api/tacit/bootstrap-preview(what a
bootstrap would cost) and/api/tacit/analyze-batch. (#33) - Usage and Pricing cards in Settings: spend tiles, a daily chart, spend by
operation, warnings, a run list, the rate table and the price source. (#33) - A Data & privacy card with retention, spend warnings and confirm-gated
clearing; the bootstrap button shows a live cost estimate. (#33)
Changed
- Settings → Tacit is eight collapsible cards instead of one long page. (#33)
- ✨ Improve converges in one pass; improving a finished prompt again returns
it unchanged. (#31)
Full diff: v0.2.3...v0.3.0
v0.2.3
Added
- Tacit also learns from a clean prompt that follows a messy one
(learnFromGood). (#29) - Directives can be scoped to a workspace. (#27)
- Bootstrap can run several analyses at once (
bootstrapConcurrency). (#20) - README: a Help shape Tacit section. (#10)
Changed
- Distilled directives are one sentence of at most 25 words. (#26)
- The browser bundle is generated from
client/src/. (#22) - Official
@deepseek-ai/*packages are peer dependencies. (#23)
Fixed
- The 👍/👎 strip appears on a conversation's first prompt too. (#24)
- Directive trials count only turns from conversations steered by the
candidate. (#21)
Full diff: v0.2.2...v0.2.3
v0.2.2
Added
Fixed
- The Improve preview shows its pending state on the first click. (#19)
- The style-rule distillation call carries the session id. (#11)
- The bootstrap hint shows the documented $0.02 to $0.05 range.
Full diff: v0.2.1...v0.2.2
v0.2.1
Changed
- The npm page shows the English README; the Chinese one moved to
docs/README.zh.md. (#2) - Documentation overhaul: getting started, how it works, a diagram, a glossary,
and claims corrected to match the code. (#3)
Full diff: v0.2.0...v0.2.1
v0.2.0
First public release. Renamed from dsh-prompt-coach to Tacit; an existing
~/.dsh/storages/prompt-coach directory is adopted automatically. (#1)
Added
- Zero-click learning from messy turns and your own corrections.
- Learned directives injected as a system-prompt section you can read, edit,
toggle and delete in Settings → Tacit. - Directive trials: a candidate is activated or retired after
directiveTrialTurnsturns. - Learn from my last 20 turns.
- A measured trend instead of a guessed savings figure.
- ✨ Improve with 👍/👎 feedback and style rules; opt-in pre-send context.
Security
- Tacit's routes refuse cross-site requests.
Removed
- The guessed "token savings %", the good-examples library and the
learningThresholdgate.
Full diff: https://github.com/hackernotfound/dsh-tacit/releases/tag/v0.2.0