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