jfox-cli 1.1.1__tar.gz → 1.2.1__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-1.1.1 → jfox_cli-1.2.1}/.claude-plugin/marketplace.json +2 -2
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/AGENTS.md +15 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/CHANGELOG.md +20 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/CLAUDE.md +2 -1
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/PKG-INFO +1 -1
- jfox_cli-1.2.1/docs/superpowers/plans/2026-06-21-gem-synthesis.md +2027 -0
- jfox_cli-1.2.1/docs/superpowers/plans/2026-06-25-gem-synth-throttle-ledger.md +717 -0
- jfox_cli-1.2.1/docs/superpowers/specs/2026-06-21-gem-synthesis-design.md +141 -0
- jfox_cli-1.2.1/docs/superpowers/specs/2026-06-25-gem-synth-throttle-ledger-design.md +174 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/__init__.py +1 -1
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/cli.py +10 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/daemon/server.py +49 -0
- jfox_cli-1.2.1/jfox/gem_synth/__init__.py +1 -0
- jfox_cli-1.2.1/jfox/gem_synth/anchors.py +116 -0
- jfox_cli-1.2.1/jfox/gem_synth/cli.py +243 -0
- jfox_cli-1.2.1/jfox/gem_synth/grounding.py +51 -0
- jfox_cli-1.2.1/jfox/gem_synth/llm.py +238 -0
- jfox_cli-1.2.1/jfox/gem_synth/loop.py +109 -0
- jfox_cli-1.2.1/jfox/gem_synth/paths.py +12 -0
- jfox_cli-1.2.1/jfox/gem_synth/store.py +141 -0
- jfox_cli-1.2.1/jfox/gem_synth/synthesizer.py +165 -0
- jfox_cli-1.2.1/jfox/gem_synth/transcript.py +115 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/global_config.py +70 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/models.py +69 -2
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/.claude-plugin/plugin.json +2 -3
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/pyproject.toml +1 -1
- jfox_cli-1.2.1/tests/integration/test_gem_synth_flow.py +54 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_anchors.py +156 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_cli.py +243 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_config.py +33 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_grounding.py +74 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_llm.py +265 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_loop.py +269 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_store.py +105 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_synthesizer.py +129 -0
- jfox_cli-1.2.1/tests/unit/test_gem_synth_transcript.py +127 -0
- jfox_cli-1.2.1/tests/unit/test_note_candidate_fields.py +100 -0
- jfox_cli-1.2.1/tests/unit/test_note_candidate_filename.py +17 -0
- jfox_cli-1.2.1/tests/unit/test_note_type_candidate.py +15 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/uv.lock +1 -1
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.claude/skills/ci/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.claude/skills/release/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.claude/skills/release/release_helper.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.githooks/pre-push +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/ISSUE_TEMPLATE/docs_improvement.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/workflows/integration-test.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.github/workflows/publish.yml +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.gitignore +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/.python-version +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/DEVELOPMENT_PLAN.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/README.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/SESSION.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/SESSION_SUMMARY.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/claude-code-plugin-guide.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/installation.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-11-bulk-import-bm25-fix.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-11-edit-command.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-11-unify-format-option.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-ci-coverage-optimization.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-edit-content-file.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-fix-index-rebuild-clear.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-fix-index-verify-id-mismatch.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-fix-jfox-health-skill-kb-param.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-index-kb-param.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-lazy-import-perf.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-12-skill-redesign.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-add-content-file.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-bulk-import-vectorstore-init.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-ingest-log-command.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-ingest-skill-sync.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-suppress-third-party-logging.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-13-sync-skills-with-cli.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-14-sync-docs-daemon-show.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-15-gpu-embedding.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-15-make-daemon-deps-required.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-15-session-summary-confirmation.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-16-fix-windows-daemon-console-window.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-18-daemon-timeout-and-index-rebuild.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-22-release-skill.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-26-fix-daemon-deprecation-warnings.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-27-intranet-model-download.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-28-tag-filtering.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-04-29-daemon-stop-fix.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-03-jfox-check.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-03-list-notes-skip-summary.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-03-log-level-fix.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-04-list-notes-index.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-06-atomic-write.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-09-session-note-type.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-10-jfox-plugin.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-19-fix-last-used-never.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-05-20-modelscope-migration.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-02-todo-note-type.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-16-kimi-code-auto-summary.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-17-index-rebuild-backlinks.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-17-using-jfox-skill.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-18-self-update-command.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/plans/2026-06-21-fragment-capture.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-03-bugfixes-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-12-skill-redesign-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-13-pr-auto-code-review-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-14-show-command-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-15-gpu-embedding-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-15-session-summary-confirmation-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-21-release-skill-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-26-fix-daemon-deprecation-warnings-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-27-intranet-model-download-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-28-tag-filtering-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-29-daemon-stop-fix-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-04-30-jfox-kb-env-var-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-03-jfox-check-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-03-list-notes-skip-summary-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-03-log-level-fix-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-04-list-notes-index-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-06-atomic-write-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-09-jfox-plugin-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-09-session-note-type-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-05-20-modelscope-migration-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-02-todo-note-type-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-16-kimi-code-auto-summary-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-17-index-rebuild-backlinks-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-17-using-jfox-skill-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-18-archive-soft-delete-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-18-self-update-command-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/superpowers/specs/2026-06-21-fragment-capture-design.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/docs/troubleshooting.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jessica-jones-static-cable.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/__main__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/extractor.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/kimi_source.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/ledger.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/loop.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/runner.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/scanner.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/auto_summary/sources.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/bm25_index.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/config.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/daemon/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/daemon/__main__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/daemon/client.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/daemon/process.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/embedding_backend.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/formatters.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/fragment/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/fragment/cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/fragment/detector.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/fragment/service.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/fragment/store.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/git_extractor.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/graph.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/indexer.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/kb_manager.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/model_downloader.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/note.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/note_index.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/performance.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/search_engine.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/template.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/template_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/utils.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/jfox/vector_store.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/package.json +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/hooks/fragment-capture.sh +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/hooks/hooks.json +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/ingest/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/manage/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/organize/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/search/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/session-summary/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/cc-plugin/skills/using-jfox/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/README.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/kimi.plugin.json +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/jfox-ingest/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/jfox-manage/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/jfox-organize/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/jfox-search/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/jfox-session-summary/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/packages/kimi-plugin/skills/using-jfox/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/pytest.ini +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/run_full_test.ps1 +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/scripts/download-model-intranet.sh +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/README.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/kimi-cli/jfox-common/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/kimi-cli/jfox-ingest/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/kimi-cli/jfox-organize/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/kimi-cli/jfox-search/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/kimi-cli/jfox-session-summary/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-ci/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-common/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-ingest/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-organize/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-release/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-search/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/skills-recommend/pi/jfox-session-summary/SKILL.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/COVERAGE_PLAN.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/MIGRATION.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/TESTS.md +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/conftest.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_auto_summary_kimi.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_backlinks.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_fragment_capture_flow.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_index_rebuild_backlinks.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_model_download.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/integration/test_tag_filter_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/performance/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/performance/test_performance.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_advanced_features.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_cli_format.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_config_set_unit.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_config_unit.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_core_workflow.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_embedding_device.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_hybrid_search.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_integration.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_kb_current.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/test_suggest_links.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_archive.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_atomic_write.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_config_sources.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_defaults.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_extractor.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_ledger.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_runner.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_scanner.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_auto_summary_status.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_bm25_batch.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_check.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_content_file.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_daemon_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_daemon_process.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_edit.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_embedding_local_load.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_format_unify.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_formatters.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_fragment_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_fragment_config.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_fragment_detector.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_fragment_service.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_fragment_store.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_git_extractor.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_global_config.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_index_kb_param.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_indexer_clear_before_rebuild.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_indexer_verify.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_kb_manager.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_kimi_extractor.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_kimi_scanner.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_lazy_import.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_ledger_migration.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_list_notes_skip.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_logging_config.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_model_downloader.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_note_index.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_rebuild_backlinks_impl.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_release_helper.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_runner_multi_source.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_scanner_list.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_session_file_source.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_session_note.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_session_source.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_show.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_system_prompt_sections.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_tag_filter.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_template.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_template_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_update.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_use_kb_env_var.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_using_jfox_skill.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/unit/test_vector_store_clear.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/utils/__init__.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/utils/assertions.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/utils/jfox_cli.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/utils/note_generator.py +0 -0
- {jfox_cli-1.1.1 → jfox_cli-1.2.1}/tests/utils/temp_kb.py +0 -0
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
},
|
|
8
8
|
"metadata": {
|
|
9
9
|
"description": "JFox Zettelkasten 知识管理工具的 Claude Code 集成",
|
|
10
|
-
"version": "0.
|
|
10
|
+
"version": "0.4.0"
|
|
11
11
|
},
|
|
12
12
|
"plugins": [
|
|
13
13
|
{
|
|
14
14
|
"name": "jfox",
|
|
15
15
|
"source": "./packages/cc-plugin",
|
|
16
16
|
"description": "JFox 知识管理 CLI 的 Claude Code 集成——搜索、写入工作流(导入/整理/会话总结)与知识库管理",
|
|
17
|
-
"version": "0.
|
|
17
|
+
"version": "0.4.0",
|
|
18
18
|
"author": { "name": "zhuxixi" },
|
|
19
19
|
"keywords": ["zettelkasten", "knowledge-management"],
|
|
20
20
|
"category": "workflow"
|
|
@@ -47,6 +47,7 @@ jfox/
|
|
|
47
47
|
│ ├── embedding_backend.py # 嵌入模型后端(支持 daemon 代理)
|
|
48
48
|
│ ├── daemon/ # Embedding 模型 HTTP 守护进程
|
|
49
49
|
│ ├── fragment/ # 碎片采集(Hook → daemon API → SQLite)
|
|
50
|
+
│ ├── gem_synth/ # L3 宝石合成(碎裂→破损 candidate 笔记,daemon 循环)
|
|
50
51
|
│ ├── vector_store.py # ChromaDB 向量存储
|
|
51
52
|
│ ├── bm25_index.py # BM25 关键词索引
|
|
52
53
|
│ ├── search_engine.py # 混合搜索引擎(RRF 融合)
|
|
@@ -163,6 +164,7 @@ uv run jfox --version
|
|
|
163
164
|
| `indexer.py` | 文件监控(watchdog)+ 增量索引 |
|
|
164
165
|
| `daemon/` | Embedding 模型 HTTP 守护进程(server/client/process) |
|
|
165
166
|
| `fragment/` | 碎片采集:detector 分类 + store SQLite + service 编排 |
|
|
167
|
+
| `gem_synth/` | L3 宝石合成:daemon 循环 + transcript 解析 + grounding 检索 + LLM 合成 |
|
|
166
168
|
|
|
167
169
|
### 笔记类型
|
|
168
170
|
|
|
@@ -172,6 +174,19 @@ class NoteType(Enum):
|
|
|
172
174
|
LITERATURE = "literature" # 文献笔记 - 读书笔记
|
|
173
175
|
PERMANENT = "permanent" # 永久笔记 - 整理后的知识
|
|
174
176
|
SESSION = "session" # AI Agent 会话记录
|
|
177
|
+
CANDIDATE = "candidate" # AI 合成的候选知识宝石(破损级,待 L5 审阅)
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
知识宝石等级(candidate / permanent 笔记的 `gem_level` frontmatter 字段):
|
|
181
|
+
|
|
182
|
+
```python
|
|
183
|
+
class GemLevel(str, Enum):
|
|
184
|
+
"""知识宝石等级:chipped→flawed→normal→flawless→perfect。L3 合成产出 flawed。"""
|
|
185
|
+
CHIPPED = "chipped" # 碎裂 — raw 碎片(fragments.db,非笔记)
|
|
186
|
+
FLAWED = "flawed" # 破损 — L3 合成的 candidate
|
|
187
|
+
NORMAL = "normal" # 完整 — L4/L5 成熟后
|
|
188
|
+
FLAWLESS = "flawless" # 完美
|
|
189
|
+
PERFECT = "perfect" # 无暇 — 晋升 permanent 的候选终态
|
|
175
190
|
```
|
|
176
191
|
|
|
177
192
|
各类型文件名格式:
|
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to jfox-cli will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [1.2.1] - 2026-06-26
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
- **gem-synth**: time-budget throttle + synthesis ledger + status (#283) (#284)
|
|
9
|
+
|
|
10
|
+
[1.2.1]: https://github.com/zhuxixi/jfox/compare/v1.2.0...v1.2.1
|
|
11
|
+
|
|
12
|
+
## [1.2.0] - 2026-06-24
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
- L3 宝石合成(碎裂→破损 candidate 笔记,#249 Layer 3) (#274)
|
|
16
|
+
|
|
17
|
+
### Fixes
|
|
18
|
+
- **cc-plugin**: remove redundant hooks field from plugin.json (#280)
|
|
19
|
+
|
|
20
|
+
### Changes
|
|
21
|
+
- fix stale cc-plugin versioning note (3 places, current 0.4.0) (#281)
|
|
22
|
+
|
|
23
|
+
[1.2.0]: https://github.com/zhuxixi/jfox/compare/v1.1.1...v1.2.0
|
|
24
|
+
|
|
5
25
|
## [1.1.1] - 2026-06-21
|
|
6
26
|
|
|
7
27
|
### Features
|
|
@@ -72,6 +72,7 @@ Notes are Markdown files with YAML frontmatter stored under `~/.zettelkasten/<kb
|
|
|
72
72
|
| `embedding_backend.py` | Sentence-transformers embedding backend(支持 daemon 代理) |
|
|
73
73
|
| `daemon/` | Embedding 模型 HTTP 守护进程 (`server.py`/`client.py`/`process.py`),`jfox daemon start/stop/status` |
|
|
74
74
|
| `fragment/` | 碎片采集:detector 分类 + store SQLite(WAL) + service 编排 |
|
|
75
|
+
| `gem_synth/` | L3 宝石合成:daemon 循环围绕锚点用 transcript + 永久笔记基准合成 candidate 笔记 |
|
|
75
76
|
| `vector_store.py` | ChromaDB vector store for semantic search |
|
|
76
77
|
| `graph.py` | NetworkX knowledge graph from links/backlinks |
|
|
77
78
|
| `template.py` / `template_cli.py` | Jinja2 template system for structured note creation |
|
|
@@ -141,7 +142,7 @@ JFox ships as a Claude Code plugin. Two-tier structure:
|
|
|
141
142
|
- `packages/cc-plugin/.claude-plugin/plugin.json` — plugin source metadata
|
|
142
143
|
- `packages/cc-plugin/skills/` — 5 skills: `search`, `ingest`, `manage`, `organize`, `session-summary`
|
|
143
144
|
|
|
144
|
-
**Plugin versioning**: bump version in
|
|
145
|
+
**Plugin versioning**: bump version in **three** places together — `packages/cc-plugin/.claude-plugin/plugin.json` (`version`) and both version fields in `.claude-plugin/marketplace.json` (`metadata.version` + `plugins[0].version`). 漏改任一处都会导致 marketplace 与 plugin 版本不一致。Current: 0.4.0.
|
|
145
146
|
**Skill rename history**: `kb` → `manage` (v0.2.0) — "manage" is the canonical KB lifecycle + CRUD skill.
|
|
146
147
|
|
|
147
148
|
## Branch Rules
|