Commit Graph

140 Commits

Author SHA1 Message Date
sehawq
92b4808ec9 fix: split token-aware into default exclusions + optional --economic mode
Co-Authored-By: sehawq <noreply@anthropic.com>
2026-03-21 18:03:59 +03:00
sehawq
8cfc9def5f fix: add token budget management and binary detection to Phase 1 codebase analysis
Fixes #105

Phase 1 codebase analysis had no token limit awareness, causing context length
overflow (102400 token limit exceeded) when analyzing large codebases or compiled
application bundles. This adds:

- Token budget (~50K tokens) with prioritized file reading strategy
- Binary application detection (.app, .exe, .AppImage) with clear error messages
- File size limits (skip >100KB), directory exclusions, and incremental deepening
- Consistent token-aware guidelines across cli-anything, refine, and HARNESS.md
2026-03-19 13:20:14 +03:00
Yuhao
40bdb40b92 Merge pull request #98 from pyxl-dev/feat/adguardhome-clean
feat: add AdGuardHome CLI harness
2026-03-19 01:40:19 +08:00
yuhao
96f4b0eef5 merge: resolve README conflicts, update counts, add adguardhome to registry
- Resolve merge conflict in README.md test badge (1,684 → 1,720)
- Update all app/demo counts from 14 → 16 to reflect all CLIs in registry
- Update test counts: 1,247 unit + 473 e2e = 1,720 total
- Add AdGuardHome entry to registry.json with contributor info (pyxl-dev)
- Add contributor/contributor_url fields to all registry entries

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 17:36:36 +00:00
yuhao
341a4dc088 include authors on CLI-Hub 2026-03-18 17:27:31 +00:00
Yuhao
2fbbe24705 Merge pull request #99 from cnfjlhj/feat/add-mubu-harness
feat(mubu): add Mubu agent harness
2026-03-19 01:07:55 +08:00
PYXL
d5e999029d Merge branch 'main' into feat/adguardhome-clean 2026-03-18 15:46:14 +01:00
pyxl
433c3cf880 fix: preserve server config when toggling log/filter settings
- log_config: trigger POST when --interval is passed without --enabled,
  read current config for missing parameters
- set_enabled: read current filter interval from server instead of
  hardcoding 24h
- Update test mock to cover the new get_status call in set_enabled

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:39:58 +01:00
cnfjlhj
ffb7395f1a merge: sync feat/add-mubu-harness with upstream main 2026-03-18 17:59:31 +08:00
cnfjlhj
71c1ae6dcf fix(mubu): harden document resolution and state branding
Deduplicate logical document paths by freshest metadata so open-path resolves real Mubu history duplicates consistently. Overlay backup-driven show/link output with metadata titles and doc paths, and default new public state to ~/.config/mubu-cli while preserving legacy fallback.
2026-03-18 17:13:44 +08:00
Ömer
061b3c9047 Merge pull request #95 from Haimbeau1o/notebooklm-agent-harness-scaffold
feat: add experimental NotebookLM agent harness scaffold / 新增实验性的 NotebookLM agent harness 脚手架
2026-03-18 11:15:35 +03:00
liuche
54f78f65d2 docs: trim notebooklm readme mentions 2026-03-18 15:30:14 +08:00
cnfjlhj
f15052487e chore(mubu): bump harness version to 0.1.1
Update the package metadata, generated skill output, test expectations, and registry entry so the contribution PR reflects the generalized daily-folder behavior in the published harness version.
2026-03-18 13:40:41 +08:00
cnfjlhj
c74bf7fdce fix(mubu): generalize daily folder resolution
Require an explicit daily folder reference or MUBU_DAILY_FOLDER for daily helpers, scrub personal examples from docs and generated skill content, and harden live E2E checks for environment-specific SSL failures.
2026-03-18 13:28:48 +08:00
cnfjlhj
6d1ae1c863 feat(mubu): add mubu agent harness 2026-03-18 12:18:31 +08:00
liuche
d7f38c54e3 Merge origin/main into notebooklm-agent-harness-scaffold 2026-03-18 08:53:00 +08:00
liuche
8e93f3bf42 docs: surface notebooklm harness and trim PR scope 2026-03-18 08:50:47 +08:00
pyxl
eaf43c5f56 fix: restore README em-dashes, keep only AdGuardHome additions
Reverts all unintended em-dash → hyphen replacements introduced in
previous commits. README is now restored from upstream (e0dd643) with
only the three AdGuardHome-related additions: badge count update,
categories table row, and project structure entry.

Addresses review feedback from yuh-yang on PR #65.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 19:23:42 +01:00
pyxl
1cf993dc97 refactor: simplify Path conversion and persist https in save_config
- Extract duplicate Path(config_path) conversion to a single variable
- save_config() now accepts and persists the https flag, ensuring
  load/save roundtrip symmetry for all config fields

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:53 +01:00
pyxl
b5a118e426 fix: address code review feedback on PR #65 (AdGuardHome CLI)
- Fix REPL argument parsing: use shlex.split() instead of str.split()
  so quoted args like --name "My PC" are handled correctly
- Fix config save: respect --config path by storing config_path in
  ctx.obj and passing it through to save_config()
- Fix HTTPS persistence: load_config() now reads 'https' key from
  saved config files (default False)
- docs: add AdGuardHome to README (badge 12 Apps, category table,
  project tree) per yuh-yang's request

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:53 +01:00
pyxl
a4c5f7b3de feat: add AdGuardHome CLI harness (cli-anything-adguardhome)
First REST HTTP API harness in the collection — AdGuardHome is a DNS-based
ad blocker and privacy protection server exposing 58 endpoints across 14
tag groups, secured with HTTP Basic Auth.

CLI covers all major API groups:
- filter: list/add/remove/enable/disable/refresh/status/toggle
- blocking: parental/safebrowsing/safesearch enable/disable/status
- blocked-services: list/set
- clients: list/add/remove/show
- stats: show/reset/config
- log: show/config/clear
- rewrite: list/add/remove
- dhcp: status/leases/add-static/remove-static
- server: status/version/restart
- config: show/save/test

Features: --json output, REPL mode, --https flag, env vars (AGH_HOST etc),
config file (~/.config/cli-anything-adguardhome.json)

Tests: 36 passing (24 unit + 12 E2E via Docker adguard/adguardhome)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:01 +01:00
yuhao
bae4e0ffda launching CLI-Hub 2026-03-17 15:39:45 +00:00
liuche
14fc13b58c Merge remote-tracking branch 'origin/main' into codex/notebooklm-agent-harness-scaffold
# Conflicts:
#	.gitignore
2026-03-17 23:09:55 +08:00
liuche
0a4d8237c5 fix: address notebooklm review feedback 2026-03-17 20:49:31 +08:00
liuche
173d84ea27 feat: add notebooklm agent harness scaffold 2026-03-17 16:58:19 +08:00
Yuhao
4fda419f4a Merge pull request #94 from ZJZAC/fix/session-race-condition
fix(session): atomic file locking to prevent race conditions in all harnesses
2026-03-17 16:30:03 +08:00
yuhao
5ee6b1aa00 update guidelines 2026-03-17 08:19:05 +00:00
ZJZAC
2f44c85f7c fix(session): add atomic file locking to prevent race conditions in all harnesses
Closes #51

The root cause: all 10 harnesses used bare `open("w") + json.dump()` for
session saves. `open("w")` truncates the file before any lock can be
acquired, so concurrent writes silently corrupt or lose data.

Fix: add `_locked_save_json()` to each session.py that opens with "r+"
(no truncation), acquires fcntl.LOCK_EX, then truncates inside the lock.
Falls back gracefully on Windows where fcntl is unavailable.

Also:
- Update HARNESS.md with session file locking guidance (per maintainer
  request on PR #52)
- Add concurrent write tests (4 threads × 50 writes) to verify the fix

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 14:35:13 +08:00
Yuhao
9997438eec Merge pull request #84 from sehawq/codex/goose-docs
Docs: add Goose Desktop/CLI usage
2026-03-16 17:50:38 +08:00
yuhao
2b46c51463 docs: refactor News section style and add SKILL.md update
Replace table format with bullet-list style. Add 2026-03-16 entry
for SKILL.md generation feature. Collapse older entries under
a details/summary block.
2026-03-16 09:48:59 +00:00
sehawq
72b833422d docs: tag goose as community and experimental 2026-03-16 12:47:59 +03:00
Yuhao
1226681f94 Merge pull request #47 from alon-mini/feature/skill-generation
feat: Add SKILL.md generation for AI agent discovery (Phase 6.5)
2026-03-16 17:38:58 +08:00
yuhao
11acc2c66c Merge remote-tracking branch 'origin/main' into feature/skill-generation
# Conflicts:
#	.gitignore
#	blender/agent-harness/setup.py
2026-03-16 09:37:34 +00:00
yuhao
248d0d2f55 docs: mention SKILL.md in 'Use the Generated CLI' section
Link to the SKILL.md Generation section and explain that pip install
makes the skill file auto-discoverable in the REPL banner.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 09:34:10 +00:00
yuhao
55d11a5df6 test: add skill path discovery tests for installed packages
51 tests covering:
- ReplSkin auto-detection of skills/SKILL.md from __file__ location
- Absolute path resolution, missing file handling, explicit override
- Banner output includes/omits skill path as expected
- All 11 harnesses have SKILL.md in correct package location
- All 11 setup.py files include package_data for skills/*.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 09:31:08 +00:00
yuhao
31abba22a4 docs: populate Command Groups tables in all 11 SKILL.md files
Fill in the previously empty command tables with actual commands
extracted from each CLI's Click decorators. All 11 harnesses now
have complete command documentation in their SKILL.md files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 09:23:30 +00:00
yuhao
1db1622156 refactor: move SKILL.md inside Python package for pip install support
Move skills/SKILL.md from the harness root into
cli_anything/<software>/skills/SKILL.md so it is installed alongside the
package via pip. Add package_data to all 11 setup.py files. Make
ReplSkin auto-detect the skill file relative to its own __file__
location, removing the need for an explicit skill_path argument.
Update HARNESS.md, cli-anything.md, plugin README, and main README.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 09:06:31 +00:00
yuhao
f73833d15a refactor: rename skill files to SKILL.md, drop software prefix from filename
Standardize skill file naming from <software>_SKILL.md to SKILL.md across
all 11 harnesses. Update skill_generator.py, HARNESS.md, repl_skin.py,
cli-anything.md, and plugin README.md to reference the new path. Add
SKILL.md generation section to main README.md and mark roadmap item done.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 08:39:51 +00:00
Yuhao
c939f64c08 Merge pull request #76 from Xyerophyte/fix/gimp-pillow-to-native-backend
fix: replace Pillow with GIMP-native Script-Fu rendering backend (fixes #48)
2026-03-16 15:57:32 +08:00
Yuhao
e09e801795 Merge pull request #80 from Bortlesboat/feat/comfyui-harness
feat: add ComfyUI agent harness
2026-03-16 15:55:46 +08:00
yuhao
3b6bf29bd8 Merge main into feat/comfyui-harness, resolve README.md conflicts
Accumulate counts: 13 apps, 1,588 tests (1,138 unit + 450 e2e).
Include both ComfyUI (from PR) and Mermaid (from main) in project structure.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 07:52:07 +00:00
Yuhao
6653f650f7 Merge pull request #88 from getmored-create/codex/mermaid-harness
Add Mermaid Live Editor harness
2026-03-16 15:10:26 +08:00
getmored-create
b7186f82ff Add Mermaid Live Editor harness 2026-03-16 13:08:53 +09:00
Andrew Barnes
a6cc783dd7 docs: add ComfyUI harness to README
Add ComfyUI (70 tests: 60 unit + 10 e2e) to the demonstrations table,
test results summary, and project structure tree. Update all counts
from 11→12 apps and 1,508→1,578 tests.

Signed-off-by: Andrew Barnes <andrew.jaguars@gmail.com>
2026-03-15 12:32:58 -04:00
sehawq
c8586ed1f1 Docs: add Goose Desktop/CLI usage 2026-03-15 18:43:22 +03:00
yuhao
1f7dd63f91 update readme 2026-03-15 15:10:13 +00:00
Yuhao
19eb9e6a8e Merge pull request #78 from sjhddh/feat-deterministic-json
feat(session): sort JSON keys for deterministic agent diffing
2026-03-15 23:02:25 +08:00
Yuhao
84396592a9 Merge pull request #79 from sjhddh/fix-docs-opencode
docs: fix opencode commands typo and add native OpenClaw instructions
2026-03-15 23:01:41 +08:00
7. Sun
10cc877de5 docs: revert opencode commands typo fix as requested 2026-03-15 14:51:14 +00:00
yuhao
81359388bf update readme 2026-03-15 14:33:42 +00:00