This website requires JavaScript.
1606d19366
feat(subprocess/codex): account for cached and reasoning tokens
dev
vikingowl
2026-05-22 13:35:57 +02:00
fe24907ce5
docs(readme): refresh post-v0.2.1 with badges and v0.2.x features
main
vikingowl
2026-05-22 13:21:31 +02:00
847ec159d7
chore(deps): promote cloud.google.com/go/auth and atotto/clipboard to direct
vikingowl
2026-05-22 13:06:36 +02:00
9ceddd39c1
chore(todo): track dockers_v2 migration under distribution follow-ups
vikingowl
2026-05-22 13:06:24 +02:00
3f74b6e362
fix(release): point GHCR image.source at GitHub mirror
v0.2.1
vikingowl
2026-05-22 13:03:36 +02:00
49d80cf847
feat(security): format-aware entropy safelist (Phase F-1)
v0.2.0
vikingowl
2026-05-22 12:39:10 +02:00
ea1a5361e2
chore: restore agy JSON-output TODO; idiomatic t.TempDir() in google test
vikingowl
2026-05-22 12:17:10 +02:00
246997c4be
Merge branch 'feat/agy-sdk-integration' into dev
vikingowl
2026-05-22 12:15:32 +02:00
0975bf7118
docs(readme): list codex and vibe alongside claude/gemini/agy
vikingowl
2026-05-22 12:15:01 +02:00
afc31b0af4
fix(subprocess): restore agy alongside codex; env-gate sandbox bypass
vikingowl
2026-05-22 12:14:54 +02:00
1717f9f567
fix(subprocess/codex): tolerate non-JSON stdout, max-of-token-paths
vikingowl
2026-05-22 12:08:32 +02:00
f83ace7ad6
fix(google): real ADC scopes, expired-token rejection, error reporting
vikingowl
2026-05-22 12:08:22 +02:00
7491a36bb7
docs(todo): track unified sensitive-content handling
vikingowl
2026-05-22 11:58:23 +02:00
bd41d76e32
refactor(tui): store pasted images in user cache, not project workdir
vikingowl
2026-05-22 11:56:04 +02:00
c5cc98ed8a
feat(provider/openai): translate user image content to image_url parts
vikingowl
2026-05-22 11:50:55 +02:00
bc137182d4
feat(engine): parse [Image: /path] markers, gate on Vision capability
vikingowl
2026-05-22 11:50:45 +02:00
a2b7f8eb3f
feat(router): vision capability gating and Ollama vision detection
vikingowl
2026-05-22 11:50:33 +02:00
d37cc2dad3
feat(message): add ContentImage type for inline image bytes
vikingowl
2026-05-22 11:50:20 +02:00
e38cce5f1f
fix(tui): security hardening, race-safety, and event handling fixes
vikingowl
2026-05-22 11:50:12 +02:00
12a6b83cc9
feat: implement Google auth precedence and Codex integration
vikingowl
2026-05-22 00:21:32 +02:00
244ecd97e5
fix: security hardening (bash redirection, unicode sanitization, edit tool resolver)
vikingowl
2026-05-21 23:29:48 +02:00
7d0e35b0f4
docs: record Phase F external validation, surface in active TODOs
vikingowl
2026-05-20 19:15:49 +02:00
8d6e66533b
docs(plans): add Phase F entropy FP reduction to post-SLM plan
vikingowl
2026-05-20 10:06:43 +02:00
69fda263f3
docs(todo): mark v0.1.0 distribution done; note follow-ups
vikingowl
2026-05-20 03:39:06 +02:00
67948df8cb
fix(mcp): make transport cross-compile on Windows
v0.1.0
vikingowl
2026-05-20 03:34:00 +02:00
59d7e2fa43
fix(release): target GitHub mirror; provider-neutral README; correct NOTICE
vikingowl
2026-05-20 03:24:53 +02:00
dd16c15029
build(release): publish multi-arch Docker images to GHCR
vikingowl
2026-05-20 03:13:53 +02:00
5170c73dac
docs: refresh README/CONTRIBUTING/AGENTS/TODO, add LICENSE, drop obsolete files
vikingowl
2026-05-20 03:13:40 +02:00
99fa0ff08e
refactor(providers): refresh defaults to current 2026 model lineup
vikingowl
2026-05-20 03:13:21 +02:00
c4fde583f5
chore(lint): gofmt sweep + errcheck cleanups in router discovery
vikingowl
2026-05-20 03:13:05 +02:00
aca830e7db
feat(engine): consumption-time stream-error failover
vikingowl
2026-05-20 02:20:00 +02:00
fb42202834
refactor(security): seal SecureProvider via unexported marker method
vikingowl
2026-05-20 02:04:07 +02:00
9853a522e6
refactor(security): consolidate TOCTOU-safe path canonicalization
vikingowl
2026-05-20 01:50:38 +02:00
f6f8801040
fix(router): restore llama.cpp model enumeration; keep /props for n_ctx
vikingowl
2026-05-20 01:45:54 +02:00
8539426a46
fix(router): restore Ollama cache prune + provider-specific context defaults
vikingowl
2026-05-20 01:42:14 +02:00
8f13ed78a9
fix(security): redact truncated private keys via header-fallback pattern
vikingowl
2026-05-20 01:37:16 +02:00
3a638cc9a4
docs(todo): add stream-error failover to backlog
vikingowl
2026-05-20 01:35:27 +02:00
c8813768d5
fix(subprocess): harden agy CLI integration
vikingowl
2026-05-20 01:29:05 +02:00
6322d10686
test: fix compilation errors in main and mcp tests after secure provider refactor
vikingowl
2026-05-20 01:21:52 +02:00
3c875276c9
feat(security): implement multi-wave audit remediation and agy provider support
vikingowl
2026-05-20 01:13:13 +02:00
129d4f1ea6
chore: remove TinyLlama and set tiny3.5 (Qwen2.5 0.5B) as default SLM
vikingowl
2026-05-20 00:26:58 +02:00
7dda6b95b3
docs: add TODO for native agy JSON output support
vikingowl
2026-05-20 00:22:04 +02:00
17d83f2e2a
feat: add agy CLI provider and support structured output via prompt augmentation
vikingowl
2026-05-20 00:21:03 +02:00
d5958203cb
Merge pull request 'chore(todo): mark post-audit security work complete' (#5 ) from chore/todo-post-audit-cleanup into main
vikingowl
2026-05-19 23:32:02 +02:00
343b0fb94a
chore(todo): mark post-audit security work complete
vikingowl
2026-05-19 23:30:08 +02:00
9b9a009f68
Merge pull request 'docs(security): ADR-004 PostToolUse hook ordering + invariant test' (#4 ) from docs/adr-posttooluse-hook-ordering into main
vikingowl
2026-05-19 23:29:31 +02:00
f8c85a26e9
docs(security): ADR-004 PostToolUse hook ordering + invariant test
vikingowl
2026-05-19 23:28:25 +02:00
c7eb14ee31
Merge pull request 'feat(security): incognito coherence (Wave 2)' (#2 ) from feat/security-wave2-incognito into main
vikingowl
2026-05-19 23:00:22 +02:00
34f6f1c786
feat(security): incognito coherence across firewall/router/persist (Wave 2)
vikingowl
2026-05-19 22:57:36 +02:00
3ae40083f1
docs(security): Wave 2 plan — incognito coherence
vikingowl
2026-05-19 22:44:20 +02:00
2132b265a1
Merge pull request 'feat(security): SafeProvider boundary wrapper (Wave 1)' (#1 ) from feat/security-wave1-safeprovider into main
vikingowl
2026-05-19 22:40:47 +02:00
d6614545a9
feat(security): wrap engine.Config.Provider + SetProvider doc (W1 follow-up)
vikingowl
2026-05-19 22:37:24 +02:00
dc084d5a82
feat(security): wire SafeProvider into all provider sites (W1-2/3/4)
vikingowl
2026-05-19 22:33:24 +02:00
8dcca64e41
feat(security): add SafeProvider boundary wrapper (W1-1)
vikingowl
2026-05-19 22:28:46 +02:00
7c6291ab7e
docs(todo): mark Phase C complete in post-SLM plan summary
vikingowl
2026-05-19 22:00:58 +02:00
d84b295da2
feat(tui): /profile slash command + status-bar profile badge (Phase C-3)
vikingowl
2026-05-19 21:59:11 +02:00
8450005b31
feat(cli): gnoma profile list/show subcommands (Phase C-2)
vikingowl
2026-05-19 21:44:50 +02:00
635dad660c
feat(config): per-profile config layering with --profile flag (Phase C-1)
vikingowl
2026-05-19 21:35:33 +02:00
0aabd19906
feat(router): per-arm strengths + cost weight (Phase D)
vikingowl
2026-05-19 21:14:45 +02:00
b331dcd61a
feat(subprocess): per-agent binary override via [cli_agents] config
vikingowl
2026-05-19 21:02:16 +02:00
342b3903e1
test(slm): align HappyPath with task-type complexity floor
vikingowl
2026-05-19 20:54:27 +02:00
43ea2e562d
feat(engine): two-stage tool routing for small local arms
vikingowl
2026-05-19 20:53:21 +02:00
21da29e73e
docs(plan): capture post-SLM-unlock outstanding work
vikingowl
2026-05-19 19:31:40 +02:00
eb0583f606
fix(router): unpin config-default provider + complexity floor by task type
vikingowl
2026-05-19 19:22:16 +02:00
6c13e82952
chore: ignore .claude/ tool state directory
vikingowl
2026-05-19 19:06:58 +02:00
0b4de6054d
feat(tui): surface SLM backend + per-turn classifier in status bar
vikingowl
2026-05-19 19:06:26 +02:00
a14fe8b504
feat(slm): pluggable backends + trivial-prompt routing
vikingowl
2026-05-19 18:53:32 +02:00
58beb7ce3c
feat(router): classifier-source telemetry + router stats command
vikingowl
2026-05-19 18:18:22 +02:00
9388479b03
feat(openai): lexical repair for malformed tool-call arguments
vikingowl
2026-05-19 17:59:05 +02:00
ec9433d783
chore(lint): clear remaining errcheck and staticcheck findings
vikingowl
2026-05-19 17:53:42 +02:00
397a39250c
feat(engine): early-stop detection for runaway agent loops
vikingowl
2026-05-19 17:39:35 +02:00
13b2f5e14d
chore(lint): clear dead code and tighten lifecycle errcheck
vikingowl
2026-05-19 17:05:54 +02:00
bb7892c0c2
chore(audit): polish remaining audit findings (M2, H1, H3)
vikingowl
2026-05-19 17:05:39 +02:00
dc438ea181
feat(plugin): trust-on-first-use manifest pinning
vikingowl
2026-05-19 16:44:09 +02:00
c44db99b41
fix(hook): execute hook Exec as a binary, not via sh -c
vikingowl
2026-05-19 16:30:23 +02:00
beaa09a154
test(permission): lock in elf safety-pattern inheritance
vikingowl
2026-05-19 16:21:53 +02:00
2bf700eec2
test(elf): make mockProvider.calls atomic
vikingowl
2026-05-19 16:19:40 +02:00
5cd3ccd931
fix(engine): guard mutable state with a mutex
vikingowl
2026-05-19 16:18:17 +02:00
b60aa02bfd
feat(fs): enforce workspace boundary on fs tools
vikingowl
2026-05-19 16:07:29 +02:00
135c8afe80
feat: various improvements to engine, router, and TUI
vikingowl
2026-05-07 22:51:50 +02:00
0d2d825e52
feat: add dynamic model discovery within providers
vikingowl
2026-05-07 22:27:24 +02:00
befcbdcfef
feat(tui): suggestion box above input, input mode indicator, ! execute
vikingowl
2026-05-07 17:35:45 +02:00
d2139c6f0c
perf+feat: parallel startup discovery + slash-command suggestion dropdown
vikingowl
2026-05-07 17:30:16 +02:00
f8867f5d78
feat(tui): /config opens interactive settings panel
vikingowl
2026-05-07 17:23:43 +02:00
71f31559c2
feat(cli): add 'gnoma providers' subcommand
vikingowl
2026-05-07 17:15:46 +02:00
adb4f5db5d
fix(slm): start llamafile in background; use lazyClassifier
vikingowl
2026-05-07 17:13:56 +02:00
9037a0d195
fix(slm): skip re-download when already set up
vikingowl
2026-05-07 17:10:16 +02:00
329610209a
fix(slm): invoke llamafile via sh to bypass Wine binfmt_misc
vikingowl
2026-05-07 17:08:52 +02:00
0a1730943f
fix: provider-agnostic startup + slm setup auto-config
vikingowl
2026-05-07 17:05:06 +02:00
062566a23d
fix(cli): three UX issues — help output, TUI startup, setup command
vikingowl
2026-05-07 16:53:57 +02:00
a9213ec382
feat(slm): Wave C — SLM classifier, MaxComplexity routing, CLI subcommands, TUI status
vikingowl
2026-05-07 16:44:32 +02:00
d1a5c79fa4
feat(slm): Wave B — Manager, Manifest, download, subprocess lifecycle
vikingowl
2026-05-07 16:23:46 +02:00
8b2202e8ec
feat(classifier): Wave A — TaskClassifier interface + HeuristicClassifier
vikingowl
2026-05-07 16:11:20 +02:00
0b1392cf6b
feat(pty): Phase 2 — interactive shell and bash interactive detection
vikingowl
2026-05-07 15:52:56 +02:00
176926924c
feat(engine): M8 cleanup — Wave B skill enforcement
vikingowl
2026-05-07 15:29:33 +02:00
9fb520fba6
feat(engine): M8 cleanup — Wave A wiring gaps
vikingowl
2026-05-07 15:22:22 +02:00
5569d4fb86
docs: consolidated roadmap, ADR-013, drop stale plans
vikingowl
2026-05-07 15:06:54 +02:00
19c196eedd
docs: note routing revisit after SLM integration
vikingowl
2026-05-07 14:41:37 +02:00
6883c2a041
feat(router): tier-based routing — CLI > local > API, disabled arms
vikingowl
2026-05-07 14:36:36 +02:00
44d0bdc032
feat(provider): subprocess CLI provider for claude, gemini, vibe
vikingowl
2026-05-07 14:29:34 +02:00