jfox-cli 0.8.0__tar.gz → 0.10.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.claude-plugin/marketplace.json +8 -5
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.gitignore +2 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/CHANGELOG.md +39 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/CLAUDE.md +10 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/PKG-INFO +30 -1
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/README.md +29 -0
- jfox_cli-0.10.0/docs/claude-code-plugin-guide.md +808 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-05-06-atomic-write.md +420 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-05-09-session-note-type.md +778 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-05-10-jfox-plugin.md +240 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-05-19-fix-last-used-never.md +296 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-05-20-modelscope-migration.md +931 -0
- jfox_cli-0.10.0/docs/superpowers/plans/2026-06-02-todo-note-type.md +1645 -0
- jfox_cli-0.10.0/docs/superpowers/specs/2026-05-06-atomic-write-design.md +55 -0
- jfox_cli-0.10.0/docs/superpowers/specs/2026-05-09-jfox-plugin-design.md +143 -0
- jfox_cli-0.10.0/docs/superpowers/specs/2026-05-09-session-note-type-design.md +138 -0
- jfox_cli-0.10.0/docs/superpowers/specs/2026-05-20-modelscope-migration-design.md +283 -0
- jfox_cli-0.10.0/docs/superpowers/specs/2026-06-02-todo-note-type-design.md +169 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/__init__.py +1 -1
- jfox_cli-0.10.0/jfox/auto_summary/__init__.py +27 -0
- jfox_cli-0.10.0/jfox/auto_summary/cli.py +413 -0
- jfox_cli-0.10.0/jfox/auto_summary/extractor.py +164 -0
- jfox_cli-0.10.0/jfox/auto_summary/ledger.py +305 -0
- jfox_cli-0.10.0/jfox/auto_summary/loop.py +99 -0
- jfox_cli-0.10.0/jfox/auto_summary/runner.py +658 -0
- jfox_cli-0.10.0/jfox/auto_summary/scanner.py +187 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/cli.py +87 -19
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/config.py +13 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/daemon/process.py +85 -2
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/daemon/server.py +88 -2
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/embedding_backend.py +22 -1
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/global_config.py +101 -5
- jfox_cli-0.10.0/jfox/model_downloader.py +402 -0
- jfox_cli-0.10.0/jfox/utils.py +27 -0
- jfox_cli-0.10.0/package.json +12 -0
- jfox_cli-0.10.0/packages/cc-plugin/.claude-plugin/plugin.json +10 -0
- {jfox_cli-0.8.0/skills-recommend/claude-code/jfox-ingest → jfox_cli-0.10.0/packages/cc-plugin/skills/ingest}/SKILL.md +7 -16
- {jfox_cli-0.8.0/skills-recommend/claude-code/jfox-common → jfox_cli-0.10.0/packages/cc-plugin/skills/manage}/SKILL.md +95 -80
- {jfox_cli-0.8.0/skills-recommend/claude-code/jfox-organize → jfox_cli-0.10.0/packages/cc-plugin/skills/organize}/SKILL.md +16 -53
- {jfox_cli-0.8.0/skills-recommend/claude-code/jfox-search → jfox_cli-0.10.0/packages/cc-plugin/skills/search}/SKILL.md +1 -1
- {jfox_cli-0.8.0/skills-recommend/kimi-cli/jfox-session-summary → jfox_cli-0.10.0/packages/cc-plugin/skills/session-summary}/SKILL.md +6 -5
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/pyproject.toml +1 -1
- jfox_cli-0.10.0/skills-recommend/README.md +116 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-ci/SKILL.md +81 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-common/SKILL.md +380 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-ingest/SKILL.md +253 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-organize/SKILL.md +153 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-release/SKILL.md +173 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-search/SKILL.md +115 -0
- jfox_cli-0.10.0/skills-recommend/pi/jfox-session-summary/SKILL.md +125 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/integration/test_model_download.py +39 -27
- jfox_cli-0.10.0/tests/unit/test_auto_summary_defaults.py +27 -0
- jfox_cli-0.10.0/tests/unit/test_auto_summary_extractor.py +178 -0
- jfox_cli-0.10.0/tests/unit/test_auto_summary_ledger.py +187 -0
- jfox_cli-0.10.0/tests/unit/test_auto_summary_runner.py +477 -0
- jfox_cli-0.10.0/tests/unit/test_auto_summary_scanner.py +127 -0
- jfox_cli-0.10.0/tests/unit/test_auto_summary_status.py +204 -0
- jfox_cli-0.10.0/tests/unit/test_daemon_cli.py +179 -0
- jfox_cli-0.10.0/tests/unit/test_daemon_process.py +330 -0
- jfox_cli-0.10.0/tests/unit/test_embedding_local_load.py +92 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_global_config.py +42 -0
- jfox_cli-0.10.0/tests/unit/test_model_downloader.py +282 -0
- jfox_cli-0.10.0/tests/unit/test_scanner_list.py +59 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_use_kb_env_var.py +54 -3
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/uv.lock +2 -2
- jfox_cli-0.8.0/.claude-plugin/plugin.json +0 -22
- jfox_cli-0.8.0/commands/jfox-common.md +0 -6
- jfox_cli-0.8.0/commands/jfox-ingest.md +0 -6
- jfox_cli-0.8.0/commands/jfox-organize.md +0 -6
- jfox_cli-0.8.0/commands/jfox-search.md +0 -6
- jfox_cli-0.8.0/commands/jfox-session-summary.md +0 -6
- jfox_cli-0.8.0/jfox/model_downloader.py +0 -281
- jfox_cli-0.8.0/skills-recommend/README.md +0 -93
- jfox_cli-0.8.0/tests/unit/test_daemon_process.py +0 -164
- jfox_cli-0.8.0/tests/unit/test_model_downloader.py +0 -135
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.claude/settings.local.json +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.claude/skills/ci/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.claude/skills/release/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.claude/skills/release/release_helper.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.githooks/pre-push +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.github/workflows/integration-test.yml +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.github/workflows/publish.yml +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/.python-version +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/AGENTS.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/DEVELOPMENT_PLAN.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/SESSION.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/SESSION_SUMMARY.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/installation.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-11-bulk-import-bm25-fix.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-11-edit-command.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-11-unify-format-option.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-ci-coverage-optimization.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-edit-content-file.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-fix-index-rebuild-clear.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-fix-index-verify-id-mismatch.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-fix-jfox-health-skill-kb-param.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-index-kb-param.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-lazy-import-perf.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-12-skill-redesign.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-add-content-file.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-bulk-import-vectorstore-init.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-ingest-log-command.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-ingest-skill-sync.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-suppress-third-party-logging.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-13-sync-skills-with-cli.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-14-sync-docs-daemon-show.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-15-gpu-embedding.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-15-make-daemon-deps-required.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-15-session-summary-confirmation.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-16-fix-windows-daemon-console-window.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-18-daemon-timeout-and-index-rebuild.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-22-release-skill.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-26-fix-daemon-deprecation-warnings.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-27-intranet-model-download.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-28-tag-filtering.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-04-29-daemon-stop-fix.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-05-03-jfox-check.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-05-03-list-notes-skip-summary.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-05-03-log-level-fix.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/plans/2026-05-04-list-notes-index.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-03-bugfixes-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-12-skill-redesign-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-13-pr-auto-code-review-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-14-show-command-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-15-gpu-embedding-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-15-session-summary-confirmation-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-21-release-skill-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-26-fix-daemon-deprecation-warnings-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-27-intranet-model-download-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-28-tag-filtering-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-29-daemon-stop-fix-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-04-30-jfox-kb-env-var-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-05-03-jfox-check-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-05-03-list-notes-skip-summary-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-05-03-log-level-fix-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/superpowers/specs/2026-05-04-list-notes-index-design.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/docs/troubleshooting.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jessica-jones-static-cable.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/__main__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/bm25_index.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/daemon/__init__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/daemon/__main__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/daemon/client.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/formatters.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/git_extractor.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/graph.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/indexer.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/kb_manager.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/models.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/note.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/note_index.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/performance.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/search_engine.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/template.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/template_cli.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/jfox/vector_store.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/pytest.ini +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/run_full_test.ps1 +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/scripts/download-model-intranet.sh +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/skills-recommend/kimi-cli/jfox-common/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/skills-recommend/kimi-cli/jfox-ingest/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/skills-recommend/kimi-cli/jfox-organize/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/skills-recommend/kimi-cli/jfox-search/SKILL.md +0 -0
- {jfox_cli-0.8.0/skills-recommend/claude-code → jfox_cli-0.10.0/skills-recommend/kimi-cli}/jfox-session-summary/SKILL.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/COVERAGE_PLAN.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/MIGRATION.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/TESTS.md +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/conftest.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/integration/__init__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/integration/test_backlinks.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/integration/test_tag_filter_cli.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/performance/__init__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/performance/test_performance.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_advanced_features.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_cli_format.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_config_set_unit.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_config_unit.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_core_workflow.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_embedding_device.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_hybrid_search.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_integration.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_kb_current.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/test_suggest_links.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/__init__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_atomic_write.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_bm25_batch.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_check.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_content_file.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_edit.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_format_unify.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_formatters.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_git_extractor.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_index_kb_param.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_indexer_clear_before_rebuild.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_indexer_verify.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_kb_manager.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_lazy_import.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_list_notes_skip.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_logging_config.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_note_index.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_release_helper.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_session_note.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_show.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_tag_filter.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_template.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_template_cli.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/unit/test_vector_store_clear.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/utils/__init__.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/utils/assertions.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/utils/jfox_cli.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/utils/note_generator.py +0 -0
- {jfox_cli-0.8.0 → jfox_cli-0.10.0}/tests/utils/temp_kb.py +0 -0
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jfox-skills",
|
|
3
3
|
"id": "jfox-skills",
|
|
4
|
-
"owner": {
|
|
4
|
+
"owner": {
|
|
5
|
+
"name": "zhuxixi",
|
|
6
|
+
"url": "https://github.com/zhuxixi"
|
|
7
|
+
},
|
|
5
8
|
"metadata": {
|
|
6
9
|
"description": "JFox Zettelkasten 知识管理工具的 Claude Code 集成",
|
|
7
|
-
"version": "0.
|
|
10
|
+
"version": "0.2.0"
|
|
8
11
|
},
|
|
9
12
|
"plugins": [
|
|
10
13
|
{
|
|
11
14
|
"name": "jfox",
|
|
12
|
-
"source": "./",
|
|
13
|
-
"description": "JFox 知识管理 CLI 的 Claude Code
|
|
14
|
-
"version": "0.
|
|
15
|
+
"source": "./packages/cc-plugin",
|
|
16
|
+
"description": "JFox 知识管理 CLI 的 Claude Code 集成——搜索、写入工作流(导入/整理/会话总结)与知识库管理",
|
|
17
|
+
"version": "0.2.0",
|
|
15
18
|
"author": { "name": "zhuxixi" },
|
|
16
19
|
"keywords": ["zettelkasten", "knowledge-management"],
|
|
17
20
|
"category": "workflow"
|
|
@@ -2,6 +2,45 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to jfox-cli will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [0.10.0] - 2026-06-06
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
- **auto-summary**: progress visibility + remove 7-day scan limit (#235)
|
|
9
|
+
- **daemon**: interactive auto-summary prompt on daemon start (#233)
|
|
10
|
+
- add pi skills and package.json for pi-package support
|
|
11
|
+
- **daemon**: add restart command
|
|
12
|
+
|
|
13
|
+
### Fixes
|
|
14
|
+
- Issue #224 CR leftovers — atomic write + CAS + interruptible Popen + threading.Event (#236)
|
|
15
|
+
|
|
16
|
+
### Changes
|
|
17
|
+
- **README**: add auto-summary section with implementation details
|
|
18
|
+
- ignore pr-monitor state and tmp issue body files
|
|
19
|
+
- add superpowers plans and spec for recent work
|
|
20
|
+
|
|
21
|
+
[0.10.0]: https://github.com/zhuxixi/jfox/compare/v0.9.0...v0.10.0
|
|
22
|
+
|
|
23
|
+
## [0.9.0] - 2026-05-22
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
- replace hf-mirror.com with ModelScope for model download
|
|
27
|
+
- auto-summary daemon for Claude Code sessions
|
|
28
|
+
|
|
29
|
+
### Fixes
|
|
30
|
+
- Last Used 始终显示 Never,日常操作未更新 last_used (#222)
|
|
31
|
+
- **plugin**: remove commands field, let Claude Code auto-discover (#214)
|
|
32
|
+
- **plugin**: correct commands paths in plugin.json (#213)
|
|
33
|
+
|
|
34
|
+
### Changes
|
|
35
|
+
- ignore pr-monitor state and tmp issue body files
|
|
36
|
+
- add superpowers plans and spec for recent work
|
|
37
|
+
- document Claude Code plugin structure in CLAUDE.md (#220)
|
|
38
|
+
- **plugin**: rename kb skill to manage and dedup CRUD docs (#218)
|
|
39
|
+
- **plugin**: restructure plugin source for marketplace best practices (#217)
|
|
40
|
+
- add Claude Code plugin guide and design docs (#215)
|
|
41
|
+
|
|
42
|
+
[0.9.0]: https://github.com/zhuxixi/jfox/compare/v0.8.0...v0.9.0
|
|
43
|
+
|
|
5
44
|
## [0.8.0] - 2026-05-10
|
|
6
45
|
|
|
7
46
|
### Features
|
|
@@ -133,6 +133,16 @@ Four jobs in `.github/workflows/integration-test.yml`:
|
|
|
133
133
|
- Set `PYTHONUTF8=1` and `chcp 65001` for encoding
|
|
134
134
|
- HuggingFace mirror for China: `export HF_ENDPOINT=https://hf-mirror.com`
|
|
135
135
|
|
|
136
|
+
## Claude Code Plugin
|
|
137
|
+
|
|
138
|
+
JFox ships as a Claude Code plugin. Two-tier structure:
|
|
139
|
+
- `.claude-plugin/marketplace.json` — top-level marketplace registry (version, description)
|
|
140
|
+
- `packages/cc-plugin/.claude-plugin/plugin.json` — plugin source metadata
|
|
141
|
+
- `packages/cc-plugin/skills/` — 5 skills: `search`, `ingest`, `manage`, `organize`, `session-summary`
|
|
142
|
+
|
|
143
|
+
**Plugin versioning**: bump version in both `plugin.json` AND `marketplace.json` together. Current: 0.2.0.
|
|
144
|
+
**Skill rename history**: `kb` → `manage` (v0.2.0) — "manage" is the canonical KB lifecycle + CRUD skill.
|
|
145
|
+
|
|
136
146
|
## Branch Rules
|
|
137
147
|
|
|
138
148
|
- **main 是保护分支**,不能直接 commit 或 push。所有改动必须通过新分支 + PR 合入。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: jfox-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.10.0
|
|
4
4
|
Summary: JFox - Zettelkasten 知识管理 CLI 工具
|
|
5
5
|
Project-URL: Homepage, https://github.com/zhuxixi/jfox
|
|
6
6
|
Project-URL: Repository, https://github.com/zhuxixi/jfox
|
|
@@ -363,6 +363,35 @@ jfox query "Luhmann's methodology" --depth 2
|
|
|
363
363
|
| `jfox daemon stop` | Stop embedding daemon |
|
|
364
364
|
| `jfox daemon status` | Show daemon PID, port, model info |
|
|
365
365
|
|
|
366
|
+
### Auto-Summary
|
|
367
|
+
|
|
368
|
+
Auto-summary runs inside the daemon to automatically archive Claude Code sessions into your knowledge base. It scans `~/.claude/projects/` for finished sessions, generates a structured summary via `claude -p`, and writes it as a `session` type note.
|
|
369
|
+
|
|
370
|
+
A session is considered "finished" when its file has not been modified for `idle_threshold` minutes (default: 30).
|
|
371
|
+
|
|
372
|
+
| Command | Description |
|
|
373
|
+
|---------|-------------|
|
|
374
|
+
| `jfox auto-summary enable` | Enable auto-summary in daemon |
|
|
375
|
+
| `jfox auto-summary disable` | Disable auto-summary |
|
|
376
|
+
| `jfox auto-summary status` | Show config and ledger statistics |
|
|
377
|
+
| `jfox auto-summary scan` | List sessions that would be processed |
|
|
378
|
+
| `jfox auto-summary run` | Manually trigger a summary round |
|
|
379
|
+
| `jfox auto-summary run --dry-run` | Preview without writing |
|
|
380
|
+
|
|
381
|
+
**Key options:**
|
|
382
|
+
- `--interval` — Scan interval in minutes (default: 30)
|
|
383
|
+
- `--idle-threshold` — Minutes of inactivity to consider a session finished (default: 30)
|
|
384
|
+
- `--kb` — Target knowledge base for saved notes
|
|
385
|
+
|
|
386
|
+
**How it works:**
|
|
387
|
+
|
|
388
|
+
- Uses `claude -p` (non-interactive mode) to generate summaries from stdin/stdout
|
|
389
|
+
- Runs with `--permission-mode bypassPermissions` so the daemon never blocks on permission prompts
|
|
390
|
+
- Tracks processed sessions in `~/.zk_auto_summary_state.json` to avoid duplicates; transient failures are retried up to 3 times before giving up
|
|
391
|
+
- A session is eligible only after its file has been idle for `idle_threshold` minutes (no new content)
|
|
392
|
+
|
|
393
|
+
> **Privacy note:** Auto-summary sends session text to Anthropic API via `claude -p` to generate summaries. Only session content is transmitted.
|
|
394
|
+
|
|
366
395
|
### Global Options
|
|
367
396
|
|
|
368
397
|
| Option | Description |
|
|
@@ -324,6 +324,35 @@ jfox query "Luhmann's methodology" --depth 2
|
|
|
324
324
|
| `jfox daemon stop` | Stop embedding daemon |
|
|
325
325
|
| `jfox daemon status` | Show daemon PID, port, model info |
|
|
326
326
|
|
|
327
|
+
### Auto-Summary
|
|
328
|
+
|
|
329
|
+
Auto-summary runs inside the daemon to automatically archive Claude Code sessions into your knowledge base. It scans `~/.claude/projects/` for finished sessions, generates a structured summary via `claude -p`, and writes it as a `session` type note.
|
|
330
|
+
|
|
331
|
+
A session is considered "finished" when its file has not been modified for `idle_threshold` minutes (default: 30).
|
|
332
|
+
|
|
333
|
+
| Command | Description |
|
|
334
|
+
|---------|-------------|
|
|
335
|
+
| `jfox auto-summary enable` | Enable auto-summary in daemon |
|
|
336
|
+
| `jfox auto-summary disable` | Disable auto-summary |
|
|
337
|
+
| `jfox auto-summary status` | Show config and ledger statistics |
|
|
338
|
+
| `jfox auto-summary scan` | List sessions that would be processed |
|
|
339
|
+
| `jfox auto-summary run` | Manually trigger a summary round |
|
|
340
|
+
| `jfox auto-summary run --dry-run` | Preview without writing |
|
|
341
|
+
|
|
342
|
+
**Key options:**
|
|
343
|
+
- `--interval` — Scan interval in minutes (default: 30)
|
|
344
|
+
- `--idle-threshold` — Minutes of inactivity to consider a session finished (default: 30)
|
|
345
|
+
- `--kb` — Target knowledge base for saved notes
|
|
346
|
+
|
|
347
|
+
**How it works:**
|
|
348
|
+
|
|
349
|
+
- Uses `claude -p` (non-interactive mode) to generate summaries from stdin/stdout
|
|
350
|
+
- Runs with `--permission-mode bypassPermissions` so the daemon never blocks on permission prompts
|
|
351
|
+
- Tracks processed sessions in `~/.zk_auto_summary_state.json` to avoid duplicates; transient failures are retried up to 3 times before giving up
|
|
352
|
+
- A session is eligible only after its file has been idle for `idle_threshold` minutes (no new content)
|
|
353
|
+
|
|
354
|
+
> **Privacy note:** Auto-summary sends session text to Anthropic API via `claude -p` to generate summaries. Only session content is transmitted.
|
|
355
|
+
|
|
327
356
|
### Global Options
|
|
328
357
|
|
|
329
358
|
| Option | Description |
|