Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
f698e3e
docs: add MRR-biased ECC Pro + AgentShield security roadmap
affaan-m Jun 22, 2026
a26a0d5
docs(design): add hosted Pro fleet dashboard design (Sentry for agent…
affaan-m Jun 22, 2026
e8244d9
feat(control-pane): serve 3D agent-airspace viz + /api/proximity feed…
affaan-m Jun 25, 2026
e3f4679
fix(clv2): escape $HOME before pgrep -f in migrate-homunculus.sh (#2339)
gaurav0107 Jun 25, 2026
2bc924f
fix(clv2): harden registry writes and project deletion (#2294, #2297)…
affaan-m Jun 25, 2026
1031d31
feat(workflows): add orch-review native Workflow pilot (#2363)
pythonstrup Jun 29, 2026
d65d3e0
Update yarn.lock (#2342)
danielnguyenfinhub Jun 29, 2026
909ae2f
Add memxus configuration to mcp-servers.json (#2355)
gpitrella Jun 29, 2026
85dfb07
Fix for docs: Scope Decision Guide table duplicated in SKILL.md and o…
Angad2005 Jun 29, 2026
8973d0f
fix(llm): align Claude provider with current Anthropic API (#2133)
quadcent Jun 29, 2026
9896644
fix(release): derive approval gate paths from version (#2383)
SiaoZeng Jun 29, 2026
73895b5
fix(release): derive video suite paths from version (#2384)
SiaoZeng Jun 29, 2026
00b443e
ci: isolate OMP workflow verification (#2382)
SiaoZeng Jun 29, 2026
acd078f
fix(tests): resolve 10 failing tests on Windows (#2307)
Tahiti18 Jun 29, 2026
b1d5d63
fix(hooks): quote args when probing Windows .cmd MCP servers via shel…
phobicdotno Jun 29, 2026
88f6894
fix(hooks): guard doc-file-warning stdin listeners behind require.mai…
sshworld Jun 29, 2026
64797fd
fix(windows): prefer PowerShell over bash to prevent zombie process a…
cd1amond Jun 29, 2026
c295012
feat(session): LLM-powered session summary via claude -p (#2388)
Tanaka-VivereGratis Jun 29, 2026
1ba1640
chore(deps): update anthropic requirement from >=0.25.0 to >=0.111.0 …
dependabot[bot] Jun 29, 2026
e676d1d
chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2328)
dependabot[bot] Jun 29, 2026
891412c
chore(deps): bump slsa-framework/slsa-github-generator/.github/workfl…
dependabot[bot] Jun 29, 2026
333e3bb
chore(deps): bump cron from 0.16.0 to 0.17.0 in /ecc2 (#2333)
dependabot[bot] Jun 29, 2026
f54c0b2
chore(deps-dev): update pytest requirement from >=8.0 to >=9.1.1 (#2324)
dependabot[bot] Jun 29, 2026
61fd5b2
chore(deps-dev): update mypy requirement from >=1.10 to >=2.1.0 (#2326)
dependabot[bot] Jun 29, 2026
723399f
chore(deps-dev): update pytest-cov requirement from >=4.1 to >=7.1.0 …
dependabot[bot] Jun 29, 2026
ad08352
chore(deps): bump the actions-minor-and-patch group across 1 director…
dependabot[bot] Jun 29, 2026
6d36d1e
chore(deps): bump the cargo-minor-and-patch group across 1 directory …
dependabot[bot] Jun 29, 2026
2159ed2
chore(deps-dev): bump eslint from 9.39.2 to 10.6.0 (#2260)
dependabot[bot] Jun 29, 2026
0cf17cc
fix(ci): unbreak main after dependabot batch (checkout SHA + lint) (#…
affaan-m Jun 30, 2026
61c103d
feat: add ecc-recipes skill (#2319)
KyawZinLatt Jun 30, 2026
237b0b9
feat(skills): add mailtrap-email-integration skill (#2288)
dieudonneAwa Jun 30, 2026
d178db8
docs(code-tour): document ref-field semantics to prevent PR-tour file…
carloscarvallo Jun 30, 2026
ec49251
fix(gateguard): finish tool-agnostic checklist across edit gate and S…
mc856 Jun 30, 2026
8c75abf
feat(skills): harden the file upload validation section in django-sec…
jvirgovic Jun 30, 2026
3a46c82
docs(skills): update Prisma and Zod API patterns for cross-version co…
m18897829375 Jun 30, 2026
7976e6f
feat(skills): make tdd-workflow test-runner aware (npm/pnpm/yarn/bun)…
pythonstrup Jun 30, 2026
1c3a989
refactor(commands): remove duplicated content in skill-create and lea…
pythonstrup Jun 30, 2026
be91f21
chore(catalog): sync manifests after skill batch (#2319 #2288 #2273 #…
affaan-m Jun 30, 2026
f12b106
fix(clv2): align Python _update_registry schema with shell counterpar…
gaurav0107 Jun 30, 2026
a89b32c
fix(clv2): serialize observer signal-counter to stop dropped incremen…
gaurav0107 Jun 30, 2026
a6d12ec
fix(clv2): surface SIGALRM timeout drops in observe.sh (#2373)
gaurav0107 Jun 30, 2026
a36148f
test(clv2): add coverage for instinct-cli prune, projects ops, promot…
gaurav0107 Jun 30, 2026
f720885
fix(clv2): archive observations only after successful analysis in obs…
gaurav0107 Jun 30, 2026
c2bcc4e
feat(continuous-learning-v2): make observer model configurable via EC…
jack-finance-able Jun 30, 2026
a141db3
feat(rules,skills): add React Native / Expo rules pack and react-nati…
yerros Jun 30, 2026
b5806b3
Add growth-log skill: methodology for effective learning capture (#2377)
YuhaoLin2005 Jun 30, 2026
51bced9
Stop hook: verify thinking quality at session end — task completeness…
YuhaoLin2005 Jun 30, 2026
0bd2b2c
feat: add loop-design-check skill (design + review goal-oriented agen…
qshanx Jun 30, 2026
81af407
chore(catalog): sync manifests + fix skill emoji (wave 2) (#2395)
affaan-m Jun 30, 2026
6fac227
fix(plan-orchestrate): detect ecc@ecc marketplace + emit ecc: agent p…
devin-ai-integration[bot] Jul 4, 2026
3af4676
refactor: consolidate duplicated hook-root resolver into shared resol…
devin-ai-integration[bot] Jul 4, 2026
1a74709
fix: docs/COMMAND-REGISTRY.json check fails on fresh Windows clone (m…
Cb2i Jul 4, 2026
914a58a
feat(workflows): re-land orch-review workflow + add /orch-review comm…
pythonstrup Jul 4, 2026
18d9780
Merge branch 'pr2321' into merge-test-2321
affaan-m Jul 4, 2026
b8df3e0
docs: replace personal absolute paths with repo-relative agentshield/…
affaan-m Jul 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat(continuous-learning-v2): make observer model configurable via EC…
…C_OBSERVER_MODEL (#2390)

* feat(continuous-learning-v2): make observer model configurable via ECC_OBSERVER_MODEL

The observer hardcoded `--model haiku`. Parameterize as "${ECC_OBSERVER_MODEL:-haiku}": the haiku default is preserved (no behavior change for existing users), but users can opt into a stronger model — e.g. `ECC_OBSERVER_MODEL=opus` — for higher-quality instinct extraction. Useful on subscription plans where model cost isn't the limiting factor.

* fix(continuous-learning-v2): address review — update wiring test + docs

- Update source-inspection test to assert the ${ECC_OBSERVER_MODEL:-haiku} defaulting behavior (was matching the literal `claude --model haiku`, which this PR changed). All 31 tests pass.
- Add guidance to raise ECC_OBSERVER_TIMEOUT_SECONDS for slower models (e.g. opus) so the 120s watchdog doesn't kill analysis mid-run.
- Fix now-stale 'Haiku session' comment -> 'observer session' (model is configurable).
  • Loading branch information
jack-finance-able authored Jun 30, 2026
commit c2bcc4ec2f783c59a62a590d571e88aa23904c72
8 changes: 6 additions & 2 deletions skills/continuous-learning-v2/agents/observer-loop.sh
Original file line number Diff line number Diff line change
Expand Up @@ -241,11 +241,15 @@ PROMPT
# on all platforms, not just when the observer happens to be launched from the project root.
cd "$PROJECT_DIR" || { echo "[$(date)] Failed to cd to PROJECT_DIR ($PROJECT_DIR), skipping analysis" >> "$LOG_FILE"; rm -f "$analysis_file"; return; }

# Prevent observe.sh from recording this automated Haiku session as observations.
# Prevent observe.sh from recording this automated observer session as observations.
# Pass prompt via -p flag instead of stdin redirect for Windows compatibility (#842).
# prompt_content is already loaded in-memory so this no longer depends on the
# mktemp absolute path continuing to resolve after cwd changes (#1296).
ECC_SKIP_OBSERVE=1 ECC_HOOK_PROFILE=minimal claude --model haiku --max-turns "$max_turns" --print \
# Model is configurable via ECC_OBSERVER_MODEL (defaults to haiku for cost efficiency);
# e.g. ECC_OBSERVER_MODEL=opus for higher-quality instinct extraction. Heavier models are
# slower — consider raising ECC_OBSERVER_TIMEOUT_SECONDS (default 120s) so the watchdog
# doesn't kill the analysis mid-run.
ECC_SKIP_OBSERVE=1 ECC_HOOK_PROFILE=minimal claude --model "${ECC_OBSERVER_MODEL:-haiku}" --max-turns "$max_turns" --print \
--allowedTools "Read,Write" \
-p "$prompt_content" >> "$LOG_FILE" 2>&1 &
claude_pid=$!
Expand Down
9 changes: 7 additions & 2 deletions tests/hooks/observer-memory.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -454,8 +454,13 @@ test('claude invocation still includes ECC_SKIP_OBSERVE and ECC_HOOK_PROFILE gua
const content = fs.readFileSync(observerLoopPath, 'utf8');
// Find the claude execution line(s)
const lines = content.split('\n');
const claudeLine = lines.find(l => l.includes('claude --model haiku'));
assert.ok(claudeLine, 'Should find claude --model haiku invocation line');
const claudeLine = lines.find(l => l.includes('claude --model'));
assert.ok(claudeLine, 'Should find claude --model invocation line');
// Model is configurable via ECC_OBSERVER_MODEL but must still default to haiku.
assert.ok(
claudeLine.includes('${ECC_OBSERVER_MODEL:-haiku}'),
`claude --model should default to haiku and honor ECC_OBSERVER_MODEL, got: ${claudeLine}`
);
// The env vars are on the same line as the claude command
const claudeLineIndex = lines.indexOf(claudeLine);
const fullCommand = lines.slice(Math.max(0, claudeLineIndex - 1), claudeLineIndex + 3).join(' ');
Expand Down
Loading