@askdkc/kiokuko 0.1.17 → 0.1.20
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.
- package/README.ja.md +91 -112
- package/README.ko.md +90 -102
- package/README.md +103 -262
- package/README.zh-CN.md +88 -102
- package/dist/agent-file/atomic-write.d.ts +90 -3
- package/dist/agent-file/atomic-write.d.ts.map +1 -1
- package/dist/agent-file/atomic-write.js +990 -14
- package/dist/agent-file/atomic-write.js.map +1 -1
- package/dist/agent-file/managed-block.d.ts +12 -1
- package/dist/agent-file/managed-block.d.ts.map +1 -1
- package/dist/agent-file/managed-block.js +49 -4
- package/dist/agent-file/managed-block.js.map +1 -1
- package/dist/agent-file/render.d.ts +1 -1
- package/dist/agent-file/render.d.ts.map +1 -1
- package/dist/agent-file/render.js +10 -7
- package/dist/agent-file/render.js.map +1 -1
- package/dist/akinator/agent-task.d.ts +11 -22
- package/dist/akinator/agent-task.d.ts.map +1 -1
- package/dist/akinator/agent-task.js +454 -99
- package/dist/akinator/agent-task.js.map +1 -1
- package/dist/akinator/capabilities.d.ts +18 -6
- package/dist/akinator/capabilities.d.ts.map +1 -1
- package/dist/akinator/capabilities.js +72 -35
- package/dist/akinator/capabilities.js.map +1 -1
- package/dist/akinator/capability-binding.d.ts +11 -0
- package/dist/akinator/capability-binding.d.ts.map +1 -0
- package/dist/akinator/capability-binding.js +56 -0
- package/dist/akinator/capability-binding.js.map +1 -0
- package/dist/akinator/domain.js +2 -2
- package/dist/akinator/domain.js.map +1 -1
- package/dist/akinator/knowledge-path.d.ts.map +1 -1
- package/dist/akinator/knowledge-path.js +409 -39
- package/dist/akinator/knowledge-path.js.map +1 -1
- package/dist/akinator/orchestrator.d.ts +3 -4
- package/dist/akinator/orchestrator.d.ts.map +1 -1
- package/dist/akinator/orchestrator.js +1 -4
- package/dist/akinator/orchestrator.js.map +1 -1
- package/dist/akinator/service.d.ts +0 -4
- package/dist/akinator/service.d.ts.map +1 -1
- package/dist/akinator/service.js +19 -35
- package/dist/akinator/service.js.map +1 -1
- package/dist/akinator/skill-discovery-attempt.d.ts +20 -0
- package/dist/akinator/skill-discovery-attempt.d.ts.map +1 -0
- package/dist/akinator/skill-discovery-attempt.js +390 -0
- package/dist/akinator/skill-discovery-attempt.js.map +1 -0
- package/dist/akinator/store.d.ts.map +1 -1
- package/dist/akinator/store.js +107 -52
- package/dist/akinator/store.js.map +1 -1
- package/dist/akinator/types.d.ts +0 -12
- package/dist/akinator/types.d.ts.map +1 -1
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +560 -150
- package/dist/cli.js.map +1 -1
- package/dist/client/server-client.d.ts +5 -3
- package/dist/client/server-client.d.ts.map +1 -1
- package/dist/client/server-client.js +486 -181
- package/dist/client/server-client.js.map +1 -1
- package/dist/commands/agent.d.ts +2 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +861 -86
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/backup.d.ts +2 -1
- package/dist/commands/backup.d.ts.map +1 -1
- package/dist/commands/backup.js +71 -8
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/doctor.d.ts +5 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +70 -26
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/export.d.ts +0 -4
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +191 -32
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts +10 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +592 -113
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts +19 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +569 -22
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/purge.d.ts.map +1 -1
- package/dist/commands/purge.js +3 -0
- package/dist/commands/purge.js.map +1 -1
- package/dist/commands/setup.d.ts +37 -8
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +448 -86
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skills.d.ts +9 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +317 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/use.d.ts +10 -2
- package/dist/commands/use.d.ts.map +1 -1
- package/dist/commands/use.js +851 -73
- package/dist/commands/use.js.map +1 -1
- package/dist/config/paths.d.ts +11 -1
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +64 -29
- package/dist/config/paths.js.map +1 -1
- package/dist/config/project-config.d.ts +1 -0
- package/dist/config/project-config.d.ts.map +1 -1
- package/dist/config/project-config.js +70 -32
- package/dist/config/project-config.js.map +1 -1
- package/dist/context/broker.d.ts +28 -14
- package/dist/context/broker.d.ts.map +1 -1
- package/dist/context/broker.js +604 -145
- package/dist/context/broker.js.map +1 -1
- package/dist/context/delivery.d.ts +6 -21
- package/dist/context/delivery.d.ts.map +1 -1
- package/dist/context/delivery.js +196 -147
- package/dist/context/delivery.js.map +1 -1
- package/dist/context/feedback.d.ts +11 -12
- package/dist/context/feedback.d.ts.map +1 -1
- package/dist/context/feedback.js +229 -261
- package/dist/context/feedback.js.map +1 -1
- package/dist/context/ranking.d.ts +1 -12
- package/dist/context/ranking.d.ts.map +1 -1
- package/dist/context/ranking.js +13 -4
- package/dist/context/ranking.js.map +1 -1
- package/dist/context/recommendations.d.ts +0 -5
- package/dist/context/recommendations.d.ts.map +1 -1
- package/dist/context/recommendations.js +0 -1
- package/dist/context/recommendations.js.map +1 -1
- package/dist/context/run-state.d.ts +26 -0
- package/dist/context/run-state.d.ts.map +1 -0
- package/dist/context/run-state.js +399 -0
- package/dist/context/run-state.js.map +1 -0
- package/dist/context/scoped-broker.d.ts +17 -5
- package/dist/context/scoped-broker.d.ts.map +1 -1
- package/dist/context/scoped-broker.js +512 -106
- package/dist/context/scoped-broker.js.map +1 -1
- package/dist/context/selection-state.d.ts +19 -0
- package/dist/context/selection-state.d.ts.map +1 -0
- package/dist/context/selection-state.js +250 -0
- package/dist/context/selection-state.js.map +1 -0
- package/dist/db/adapter.d.ts +5 -3
- package/dist/db/adapter.d.ts.map +1 -1
- package/dist/db/adapter.js +7 -3
- package/dist/db/adapter.js.map +1 -1
- package/dist/db/capabilities.d.ts.map +1 -1
- package/dist/db/capabilities.js +34 -16
- package/dist/db/capabilities.js.map +1 -1
- package/dist/db/connection.d.ts +8 -0
- package/dist/db/connection.d.ts.map +1 -1
- package/dist/db/connection.js +55 -26
- package/dist/db/connection.js.map +1 -1
- package/dist/db/migrate.d.ts +28 -7
- package/dist/db/migrate.d.ts.map +1 -1
- package/dist/db/migrate.js +106 -78
- package/dist/db/migrate.js.map +1 -1
- package/dist/db/sqlite-retry.d.ts +11 -0
- package/dist/db/sqlite-retry.d.ts.map +1 -0
- package/dist/db/sqlite-retry.js +66 -0
- package/dist/db/sqlite-retry.js.map +1 -0
- package/dist/db/transaction.d.ts +13 -0
- package/dist/db/transaction.d.ts.map +1 -1
- package/dist/db/transaction.js +53 -24
- package/dist/db/transaction.js.map +1 -1
- package/dist/db/upgrade-backup.d.ts +58 -2
- package/dist/db/upgrade-backup.d.ts.map +1 -1
- package/dist/db/upgrade-backup.js +758 -28
- package/dist/db/upgrade-backup.js.map +1 -1
- package/dist/errors.d.ts +4 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +29 -1
- package/dist/errors.js.map +1 -1
- package/dist/gateway/agent-service.d.ts +4 -1
- package/dist/gateway/agent-service.d.ts.map +1 -1
- package/dist/gateway/agent-service.js +71 -58
- package/dist/gateway/agent-service.js.map +1 -1
- package/dist/gateway/checkpoint-service.d.ts +1 -0
- package/dist/gateway/checkpoint-service.d.ts.map +1 -1
- package/dist/gateway/checkpoint-service.js +47 -24
- package/dist/gateway/checkpoint-service.js.map +1 -1
- package/dist/ledger/archive.d.ts +1 -4
- package/dist/ledger/archive.d.ts.map +1 -1
- package/dist/ledger/archive.js +77 -39
- package/dist/ledger/archive.js.map +1 -1
- package/dist/ledger/maintenance.d.ts +0 -11
- package/dist/ledger/maintenance.d.ts.map +1 -1
- package/dist/ledger/maintenance.js +24 -40
- package/dist/ledger/maintenance.js.map +1 -1
- package/dist/ledger/projection.d.ts +0 -1
- package/dist/ledger/projection.d.ts.map +1 -1
- package/dist/ledger/projection.js.map +1 -1
- package/dist/ledger/promotion.d.ts +0 -9
- package/dist/ledger/promotion.d.ts.map +1 -1
- package/dist/ledger/promotion.js.map +1 -1
- package/dist/ledger/query.d.ts +1 -15
- package/dist/ledger/query.d.ts.map +1 -1
- package/dist/ledger/query.js.map +1 -1
- package/dist/ledger/store.d.ts +0 -1
- package/dist/ledger/store.d.ts.map +1 -1
- package/dist/ledger/store.js +11 -8
- package/dist/ledger/store.js.map +1 -1
- package/dist/ledger/types.d.ts +0 -4
- package/dist/ledger/types.d.ts.map +1 -1
- package/dist/ledger/types.js.map +1 -1
- package/dist/ledger/validate.d.ts.map +1 -1
- package/dist/ledger/validate.js +0 -5
- package/dist/ledger/validate.js.map +1 -1
- package/dist/mcp/server.d.ts +4 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +105 -54
- package/dist/mcp/server.js.map +1 -1
- package/dist/memory/audit.d.ts +0 -1
- package/dist/memory/audit.d.ts.map +1 -1
- package/dist/memory/audit.js +0 -1
- package/dist/memory/audit.js.map +1 -1
- package/dist/memory/curator.d.ts.map +1 -1
- package/dist/memory/curator.js +172 -96
- package/dist/memory/curator.js.map +1 -1
- package/dist/memory/entries.d.ts +12 -2
- package/dist/memory/entries.d.ts.map +1 -1
- package/dist/memory/entries.js +199 -115
- package/dist/memory/entries.js.map +1 -1
- package/dist/memory/federated-retrieval.d.ts +12 -1
- package/dist/memory/federated-retrieval.d.ts.map +1 -1
- package/dist/memory/federated-retrieval.js +183 -70
- package/dist/memory/federated-retrieval.js.map +1 -1
- package/dist/memory/hybrid-retrieval.d.ts +5 -11
- package/dist/memory/hybrid-retrieval.d.ts.map +1 -1
- package/dist/memory/hybrid-retrieval.js +78 -58
- package/dist/memory/hybrid-retrieval.js.map +1 -1
- package/dist/memory/lifecycle.d.ts.map +1 -1
- package/dist/memory/lifecycle.js +17 -13
- package/dist/memory/lifecycle.js.map +1 -1
- package/dist/memory/rebuild-search.d.ts +5 -0
- package/dist/memory/rebuild-search.d.ts.map +1 -1
- package/dist/memory/rebuild-search.js +101 -76
- package/dist/memory/rebuild-search.js.map +1 -1
- package/dist/memory/retrieval-query.d.ts +0 -5
- package/dist/memory/retrieval-query.d.ts.map +1 -1
- package/dist/memory/retrieval-query.js +0 -5
- package/dist/memory/retrieval-query.js.map +1 -1
- package/dist/memory/retrieval.d.ts.map +1 -1
- package/dist/memory/retrieval.js +25 -131
- package/dist/memory/retrieval.js.map +1 -1
- package/dist/memory/revisions.d.ts +76 -1
- package/dist/memory/revisions.d.ts.map +1 -1
- package/dist/memory/revisions.js +540 -36
- package/dist/memory/revisions.js.map +1 -1
- package/dist/memory/scoped-memory.d.ts +16 -1
- package/dist/memory/scoped-memory.d.ts.map +1 -1
- package/dist/memory/scoped-memory.js +240 -107
- package/dist/memory/scoped-memory.js.map +1 -1
- package/dist/memory/secrets.d.ts +2 -0
- package/dist/memory/secrets.d.ts.map +1 -1
- package/dist/memory/secrets.js +36 -0
- package/dist/memory/secrets.js.map +1 -1
- package/dist/memory/structured-memory.d.ts +3 -2
- package/dist/memory/structured-memory.d.ts.map +1 -1
- package/dist/memory/structured-memory.js +54 -22
- package/dist/memory/structured-memory.js.map +1 -1
- package/dist/memory/workspaces.d.ts +9 -0
- package/dist/memory/workspaces.d.ts.map +1 -1
- package/dist/memory/workspaces.js +67 -0
- package/dist/memory/workspaces.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +7 -0
- package/dist/package-version.js.map +1 -0
- package/dist/repository/binding.d.ts +5 -0
- package/dist/repository/binding.d.ts.map +1 -1
- package/dist/repository/binding.js +117 -17
- package/dist/repository/binding.js.map +1 -1
- package/dist/repository/framework-version.d.ts +8 -0
- package/dist/repository/framework-version.d.ts.map +1 -0
- package/dist/repository/framework-version.js +29 -0
- package/dist/repository/framework-version.js.map +1 -0
- package/dist/repository/identity-value.d.ts +4 -0
- package/dist/repository/identity-value.d.ts.map +1 -0
- package/dist/repository/identity-value.js +24 -0
- package/dist/repository/identity-value.js.map +1 -0
- package/dist/repository/identity.d.ts.map +1 -1
- package/dist/repository/identity.js +2 -0
- package/dist/repository/identity.js.map +1 -1
- package/dist/repository/project-fingerprint.d.ts +14 -2
- package/dist/repository/project-fingerprint.d.ts.map +1 -1
- package/dist/repository/project-fingerprint.js +312 -33
- package/dist/repository/project-fingerprint.js.map +1 -1
- package/dist/repository/remote-url.d.ts +0 -1
- package/dist/repository/remote-url.d.ts.map +1 -1
- package/dist/repository/remote-url.js +0 -1
- package/dist/repository/remote-url.js.map +1 -1
- package/dist/runtime-version.d.ts +2 -1
- package/dist/runtime-version.d.ts.map +1 -1
- package/dist/runtime-version.js +21 -4
- package/dist/runtime-version.js.map +1 -1
- package/dist/serialization/boundary-json.d.ts +20 -0
- package/dist/serialization/boundary-json.d.ts.map +1 -0
- package/dist/serialization/boundary-json.js +129 -0
- package/dist/serialization/boundary-json.js.map +1 -0
- package/dist/serialization/envelope.js +1 -1
- package/dist/serialization/envelope.js.map +1 -1
- package/dist/serialization/validate.d.ts +7 -0
- package/dist/serialization/validate.d.ts.map +1 -1
- package/dist/serialization/validate.js +53 -13
- package/dist/serialization/validate.js.map +1 -1
- package/dist/server/app.js +1 -1
- package/dist/server/app.js.map +1 -1
- package/dist/server/http.d.ts +4 -3
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +90 -50
- package/dist/server/http.js.map +1 -1
- package/dist/server/idempotency.d.ts +0 -6
- package/dist/server/idempotency.d.ts.map +1 -1
- package/dist/server/idempotency.js.map +1 -1
- package/dist/server/router.d.ts.map +1 -1
- package/dist/server/router.js +21 -4
- package/dist/server/router.js.map +1 -1
- package/dist/server/routes/agent-capability-gate.d.ts +40 -0
- package/dist/server/routes/agent-capability-gate.d.ts.map +1 -0
- package/dist/server/routes/agent-capability-gate.js +182 -0
- package/dist/server/routes/agent-capability-gate.js.map +1 -0
- package/dist/server/routes/agent-events.d.ts.map +1 -1
- package/dist/server/routes/agent-events.js +8 -1
- package/dist/server/routes/agent-events.js.map +1 -1
- package/dist/server/routes/agent-intake.d.ts.map +1 -1
- package/dist/server/routes/agent-intake.js +10 -2
- package/dist/server/routes/agent-intake.js.map +1 -1
- package/dist/server/routes/agent-promotions.d.ts.map +1 -1
- package/dist/server/routes/agent-promotions.js +5 -2
- package/dist/server/routes/agent-promotions.js.map +1 -1
- package/dist/server/routes/agent-runs.d.ts.map +1 -1
- package/dist/server/routes/agent-runs.js +18 -4
- package/dist/server/routes/agent-runs.js.map +1 -1
- package/dist/server/routes/request-binding.d.ts +5 -0
- package/dist/server/routes/request-binding.d.ts.map +1 -0
- package/dist/server/routes/request-binding.js +49 -0
- package/dist/server/routes/request-binding.js.map +1 -0
- package/dist/server/routes/task5-support.d.ts +1 -8
- package/dist/server/routes/task5-support.d.ts.map +1 -1
- package/dist/server/routes/task5-support.js +1 -17
- package/dist/server/routes/task5-support.js.map +1 -1
- package/dist/server/routes/task5.d.ts.map +1 -1
- package/dist/server/routes/task5.js +106 -36
- package/dist/server/routes/task5.js.map +1 -1
- package/dist/server/write-queue.js +2 -2
- package/dist/server/write-queue.js.map +1 -1
- package/dist/setup/claude-config.d.ts +4 -1
- package/dist/setup/claude-config.d.ts.map +1 -1
- package/dist/setup/claude-config.js +62 -4
- package/dist/setup/claude-config.js.map +1 -1
- package/dist/setup/client-detection.d.ts +7 -2
- package/dist/setup/client-detection.d.ts.map +1 -1
- package/dist/setup/client-detection.js +27 -9
- package/dist/setup/client-detection.js.map +1 -1
- package/dist/setup/hermes-config.d.ts +4 -1
- package/dist/setup/hermes-config.d.ts.map +1 -1
- package/dist/setup/hermes-config.js +71 -17
- package/dist/setup/hermes-config.js.map +1 -1
- package/dist/setup/legacy-client-cleanup.d.ts +6 -0
- package/dist/setup/legacy-client-cleanup.d.ts.map +1 -0
- package/dist/setup/legacy-client-cleanup.js +152 -0
- package/dist/setup/legacy-client-cleanup.js.map +1 -0
- package/dist/setup/managed-text.d.ts.map +1 -1
- package/dist/setup/managed-text.js +11 -1
- package/dist/setup/managed-text.js.map +1 -1
- package/dist/setup/mcp-conflict.d.ts +4 -0
- package/dist/setup/mcp-conflict.d.ts.map +1 -0
- package/dist/setup/mcp-conflict.js +15 -0
- package/dist/setup/mcp-conflict.js.map +1 -0
- package/dist/setup/opencode-config.d.ts +4 -1
- package/dist/setup/opencode-config.d.ts.map +1 -1
- package/dist/setup/opencode-config.js +65 -5
- package/dist/setup/opencode-config.js.map +1 -1
- package/dist/setup/render.d.ts +4 -1
- package/dist/setup/render.d.ts.map +1 -1
- package/dist/setup/render.js +168 -18
- package/dist/setup/render.js.map +1 -1
- package/dist/setup/standard-skills.d.ts +16 -2
- package/dist/setup/standard-skills.d.ts.map +1 -1
- package/dist/setup/standard-skills.js +37 -13
- package/dist/setup/standard-skills.js.map +1 -1
- package/dist/setup/strict-json.d.ts +7 -0
- package/dist/setup/strict-json.d.ts.map +1 -0
- package/dist/setup/strict-json.js +98 -0
- package/dist/setup/strict-json.js.map +1 -0
- package/dist/setup/strict-toml.d.ts +18 -0
- package/dist/setup/strict-toml.d.ts.map +1 -0
- package/dist/setup/strict-toml.js +491 -0
- package/dist/setup/strict-toml.js.map +1 -0
- package/dist/skills/cache.d.ts +15 -0
- package/dist/skills/cache.d.ts.map +1 -0
- package/dist/skills/cache.js +19 -0
- package/dist/skills/cache.js.map +1 -0
- package/dist/skills/candidate-ranking.d.ts +15 -0
- package/dist/skills/candidate-ranking.d.ts.map +1 -0
- package/dist/skills/candidate-ranking.js +52 -0
- package/dist/skills/candidate-ranking.js.map +1 -0
- package/dist/skills/chunking.d.ts +11 -0
- package/dist/skills/chunking.d.ts.map +1 -0
- package/dist/skills/chunking.js +291 -0
- package/dist/skills/chunking.js.map +1 -0
- package/dist/skills/config.d.ts +19 -0
- package/dist/skills/config.d.ts.map +1 -0
- package/dist/skills/config.js +103 -0
- package/dist/skills/config.js.map +1 -0
- package/dist/skills/discovery-service.d.ts +26 -0
- package/dist/skills/discovery-service.d.ts.map +1 -0
- package/dist/skills/discovery-service.js +921 -0
- package/dist/skills/discovery-service.js.map +1 -0
- package/dist/skills/external-transport.d.ts +2 -0
- package/dist/skills/external-transport.d.ts.map +1 -0
- package/dist/skills/external-transport.js +30 -0
- package/dist/skills/external-transport.js.map +1 -0
- package/dist/skills/find.d.ts +16 -0
- package/dist/skills/find.d.ts.map +1 -0
- package/dist/skills/find.js +58 -0
- package/dist/skills/find.js.map +1 -0
- package/dist/skills/gap-detection.d.ts +23 -0
- package/dist/skills/gap-detection.d.ts.map +1 -0
- package/dist/skills/gap-detection.js +62 -0
- package/dist/skills/gap-detection.js.map +1 -0
- package/dist/skills/import-preparation.d.ts +4 -0
- package/dist/skills/import-preparation.d.ts.map +1 -0
- package/dist/skills/import-preparation.js +20 -0
- package/dist/skills/import-preparation.js.map +1 -0
- package/dist/skills/materialization-authority.d.ts +11 -0
- package/dist/skills/materialization-authority.d.ts.map +1 -0
- package/dist/skills/materialization-authority.js +92 -0
- package/dist/skills/materialization-authority.js.map +1 -0
- package/dist/skills/materialization-service.d.ts +22 -0
- package/dist/skills/materialization-service.d.ts.map +1 -0
- package/dist/skills/materialization-service.js +101 -0
- package/dist/skills/materialization-service.js.map +1 -0
- package/dist/skills/official-catalog.d.ts +31 -0
- package/dist/skills/official-catalog.d.ts.map +1 -0
- package/dist/skills/official-catalog.js +110 -0
- package/dist/skills/official-catalog.js.map +1 -0
- package/dist/skills/providers/schema.d.ts +30 -0
- package/dist/skills/providers/schema.d.ts.map +1 -0
- package/dist/skills/providers/schema.js +354 -0
- package/dist/skills/providers/schema.js.map +1 -0
- package/dist/skills/providers/skills-sh-compat.d.ts +17 -0
- package/dist/skills/providers/skills-sh-compat.d.ts.map +1 -0
- package/dist/skills/providers/skills-sh-compat.js +71 -0
- package/dist/skills/providers/skills-sh-compat.js.map +1 -0
- package/dist/skills/providers/skills-sh-v1.d.ts +23 -0
- package/dist/skills/providers/skills-sh-v1.d.ts.map +1 -0
- package/dist/skills/providers/skills-sh-v1.js +134 -0
- package/dist/skills/providers/skills-sh-v1.js.map +1 -0
- package/dist/skills/query-builder.d.ts +18 -0
- package/dist/skills/query-builder.d.ts.map +1 -0
- package/dist/skills/query-builder.js +93 -0
- package/dist/skills/query-builder.js.map +1 -0
- package/dist/skills/source/errors.d.ts +9 -0
- package/dist/skills/source/errors.d.ts.map +1 -0
- package/dist/skills/source/errors.js +15 -0
- package/dist/skills/source/errors.js.map +1 -0
- package/dist/skills/source/frontmatter.d.ts +9 -0
- package/dist/skills/source/frontmatter.d.ts.map +1 -0
- package/dist/skills/source/frontmatter.js +77 -0
- package/dist/skills/source/frontmatter.js.map +1 -0
- package/dist/skills/source/github-fetcher.d.ts +20 -0
- package/dist/skills/source/github-fetcher.d.ts.map +1 -0
- package/dist/skills/source/github-fetcher.js +292 -0
- package/dist/skills/source/github-fetcher.js.map +1 -0
- package/dist/skills/source/snapshot-validator.d.ts +28 -0
- package/dist/skills/source/snapshot-validator.d.ts.map +1 -0
- package/dist/skills/source/snapshot-validator.js +186 -0
- package/dist/skills/source/snapshot-validator.js.map +1 -0
- package/dist/skills/store.d.ts +181 -0
- package/dist/skills/store.d.ts.map +1 -0
- package/dist/skills/store.js +1710 -0
- package/dist/skills/store.js.map +1 -0
- package/dist/skills/types.d.ts +169 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +2 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/web/i18n.d.ts +32 -0
- package/dist/web/i18n.d.ts.map +1 -1
- package/dist/web/i18n.js +128 -0
- package/dist/web/i18n.js.map +1 -1
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +386 -38
- package/dist/web/server.js.map +1 -1
- package/dist/web/ui.d.ts +4 -0
- package/dist/web/ui.d.ts.map +1 -1
- package/dist/web/ui.js +382 -6
- package/dist/web/ui.js.map +1 -1
- package/migrations/009_external_skill_discovery.sql +126 -0
- package/package.json +6 -3
- package/skills/kiokuko-single-purpose-functions/SKILL.md +288 -0
- package/skills/kiokuko-single-purpose-functions/references/kiokuko-patterns.md +344 -0
- package/skills/kiokuko-single-purpose-functions/references/review-checklist.md +97 -0
- package/skills/kiokuko-ui-design-soul/SKILL.md +1186 -28
- package/templates/AGENTS.md +8 -7
- package/dist/client/runtime-discovery.d.ts +0 -15
- package/dist/client/runtime-discovery.d.ts.map +0 -1
- package/dist/client/runtime-discovery.js +0 -45
- package/dist/client/runtime-discovery.js.map +0 -1
- package/dist/commands/call.d.ts +0 -7
- package/dist/commands/call.d.ts.map +0 -1
- package/dist/commands/call.js +0 -10
- package/dist/commands/call.js.map +0 -1
- package/dist/commands/link.d.ts +0 -6
- package/dist/commands/link.d.ts.map +0 -1
- package/dist/commands/link.js +0 -6
- package/dist/commands/link.js.map +0 -1
- package/dist/commands/promote.d.ts +0 -6
- package/dist/commands/promote.d.ts.map +0 -1
- package/dist/commands/promote.js +0 -6
- package/dist/commands/promote.js.map +0 -1
- package/dist/commands/read.d.ts +0 -6
- package/dist/commands/read.d.ts.map +0 -1
- package/dist/commands/read.js +0 -4
- package/dist/commands/read.js.map +0 -1
- package/dist/commands/recall.d.ts +0 -6
- package/dist/commands/recall.d.ts.map +0 -1
- package/dist/commands/recall.js +0 -4
- package/dist/commands/recall.js.map +0 -1
- package/dist/commands/record.d.ts +0 -6
- package/dist/commands/record.d.ts.map +0 -1
- package/dist/commands/record.js +0 -4
- package/dist/commands/record.js.map +0 -1
- package/dist/commands/search.d.ts +0 -6
- package/dist/commands/search.d.ts.map +0 -1
- package/dist/commands/search.js +0 -4
- package/dist/commands/search.js.map +0 -1
- package/dist/commands/supersede.d.ts +0 -6
- package/dist/commands/supersede.d.ts.map +0 -1
- package/dist/commands/supersede.js +0 -6
- package/dist/commands/supersede.js.map +0 -1
- package/dist/knowledge/sources.d.ts +0 -72
- package/dist/knowledge/sources.d.ts.map +0 -1
- package/dist/knowledge/sources.js +0 -388
- package/dist/knowledge/sources.js.map +0 -1
- package/dist/setup/opencode-evidence.d.ts +0 -37
- package/dist/setup/opencode-evidence.d.ts.map +0 -1
- package/dist/setup/opencode-evidence.js +0 -58
- package/dist/setup/opencode-evidence.js.map +0 -1
- package/dist/setup/opencode-loop-guard.d.ts +0 -9
- package/dist/setup/opencode-loop-guard.d.ts.map +0 -1
- package/dist/setup/opencode-loop-guard.js +0 -248
- package/dist/setup/opencode-loop-guard.js.map +0 -1
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { KiokukoError } from '../errors.js';
|
|
2
|
+
import { authorizeSkillMaterialization } from './materialization-authority.js';
|
|
3
|
+
import { reviewedCatalogSkill } from './official-catalog.js';
|
|
4
|
+
import { SkillProviderError } from './providers/schema.js';
|
|
5
|
+
import { SkillSourceError } from './source/errors.js';
|
|
6
|
+
import { validateSkillCandidate } from './source/snapshot-validator.js';
|
|
7
|
+
import { clearPersistentSkillAuditFailure, clearPersistentSkillSourceFailure, readPersistentSkillAuditFailure, readPersistentSkillSourceFailure, writePersistentSkillAuditFailure, writePersistentSkillSourceFailure, } from './store.js';
|
|
8
|
+
export const DEFAULT_EXTERNAL_SKILL_FAILURE_TTL_MS = 10 * 60_000;
|
|
9
|
+
export const MAX_EXTERNAL_SKILL_RETRY_AFTER_MS = 24 * 60 * 60_000;
|
|
10
|
+
export function externalSkillFailureTtlMs(retryAfterSeconds) {
|
|
11
|
+
if (retryAfterSeconds === null || !Number.isFinite(retryAfterSeconds) || retryAfterSeconds <= 0) {
|
|
12
|
+
return DEFAULT_EXTERNAL_SKILL_FAILURE_TTL_MS;
|
|
13
|
+
}
|
|
14
|
+
return Math.min(MAX_EXTERNAL_SKILL_RETRY_AFTER_MS, Math.max(1, Math.floor(retryAfterSeconds * 1000)));
|
|
15
|
+
}
|
|
16
|
+
function publicAuditFailure(error) {
|
|
17
|
+
const failureCode = error.code;
|
|
18
|
+
const code = (() => {
|
|
19
|
+
switch (failureCode) {
|
|
20
|
+
case 'registry_authentication_failed': return 'AUTHENTICATION_ERROR';
|
|
21
|
+
case 'registry_invalid_response': return 'INTEGRITY_ERROR';
|
|
22
|
+
case 'registry_unavailable':
|
|
23
|
+
case 'registry_rate_limited': return 'SERVICE_UNAVAILABLE';
|
|
24
|
+
default: throw error;
|
|
25
|
+
}
|
|
26
|
+
})();
|
|
27
|
+
return new KiokukoError(code, 'External skill provider audit failed closed', {
|
|
28
|
+
failureCode,
|
|
29
|
+
...(error.retryAfterSeconds === null ? {} : { retryAfterSeconds: error.retryAfterSeconds }),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Apply exact provider-audit and GitHub-source backoff before retrieving a
|
|
34
|
+
* snapshot. Cache rows are operational denial state; they never authorize a
|
|
35
|
+
* materialization and a stored passed audit label is deliberately ignored.
|
|
36
|
+
*/
|
|
37
|
+
export async function fetchMaterializableSkillSnapshot(database, candidate, dependencies) {
|
|
38
|
+
const now = dependencies.now ?? new Date().toISOString();
|
|
39
|
+
const cacheWrite = dependencies.cacheWrite ?? (async (operation) => operation());
|
|
40
|
+
const materializationCandidate = validateSkillCandidate(candidate);
|
|
41
|
+
const providerId = dependencies.provider.id;
|
|
42
|
+
const reviewedCatalog = reviewedCatalogSkill(materializationCandidate) !== undefined;
|
|
43
|
+
if (!reviewedCatalog && providerId !== materializationCandidate.provider) {
|
|
44
|
+
throw new KiokukoError('SECURITY_REJECTION', 'External skill audit provider does not match the candidate provider');
|
|
45
|
+
}
|
|
46
|
+
const cachedSourceFailure = readPersistentSkillSourceFailure(database, materializationCandidate, now);
|
|
47
|
+
if (cachedSourceFailure !== null)
|
|
48
|
+
throw new SkillSourceError(cachedSourceFailure.code);
|
|
49
|
+
let authorization;
|
|
50
|
+
if (!reviewedCatalog) {
|
|
51
|
+
const cachedAuditFailure = readPersistentSkillAuditFailure(database, providerId, materializationCandidate, now);
|
|
52
|
+
if (cachedAuditFailure !== null) {
|
|
53
|
+
throw new KiokukoError('SERVICE_UNAVAILABLE', 'External skill provider audit is in backoff', {
|
|
54
|
+
failureCode: cachedAuditFailure.code,
|
|
55
|
+
expiresAt: cachedAuditFailure.expiresAt,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
authorization = await authorizeSkillMaterialization(dependencies.provider, materializationCandidate);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
if (!(error instanceof SkillProviderError))
|
|
64
|
+
throw error;
|
|
65
|
+
if (error.code === 'registry_rate_limited' || error.code === 'registry_unavailable') {
|
|
66
|
+
const failureCode = error.code;
|
|
67
|
+
await cacheWrite(() => writePersistentSkillAuditFailure(database, providerId, materializationCandidate, failureCode, externalSkillFailureTtlMs(error.retryAfterSeconds), now));
|
|
68
|
+
}
|
|
69
|
+
throw publicAuditFailure(error);
|
|
70
|
+
}
|
|
71
|
+
if (authorization.status === 'unavailable') {
|
|
72
|
+
await cacheWrite(() => writePersistentSkillAuditFailure(database, providerId, materializationCandidate, 'registry_unavailable', DEFAULT_EXTERNAL_SKILL_FAILURE_TTL_MS, now));
|
|
73
|
+
throw new KiokukoError('SERVICE_UNAVAILABLE', 'External skill provider audit is unavailable', {
|
|
74
|
+
failureCode: 'registry_unavailable',
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
if (!reviewedCatalog)
|
|
78
|
+
await cacheWrite(() => clearPersistentSkillAuditFailure(database, providerId, materializationCandidate));
|
|
79
|
+
if (authorization.status === 'failed') {
|
|
80
|
+
throw new KiokukoError('SECURITY_REJECTION', 'External skill provider audit rejected the candidate', {
|
|
81
|
+
failureCode: 'community_audit_failed',
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
let snapshot;
|
|
85
|
+
try {
|
|
86
|
+
snapshot = await dependencies.sourceFetcher.fetch(authorization.candidate, dependencies.sourceRequest);
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
if (error instanceof SkillSourceError && (error.code === 'source_rate_limited' || error.code === 'source_unavailable')) {
|
|
90
|
+
const failureCode = error.code;
|
|
91
|
+
await cacheWrite(() => writePersistentSkillSourceFailure(database, materializationCandidate, failureCode, externalSkillFailureTtlMs(error.retryAfterSeconds), now));
|
|
92
|
+
}
|
|
93
|
+
throw error;
|
|
94
|
+
}
|
|
95
|
+
await cacheWrite(() => clearPersistentSkillSourceFailure(database, materializationCandidate));
|
|
96
|
+
return {
|
|
97
|
+
snapshot,
|
|
98
|
+
...(authorization.status === 'passed' ? { authorization: authorization.authorization } : {}),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=materialization-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"materialization-service.js","sourceRoot":"","sources":["../../src/skills/materialization-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ProjectFingerprint } from '../repository/project-fingerprint.js';
|
|
2
|
+
import type { SkillCandidate, SkillRequirement } from './types.js';
|
|
3
|
+
export interface OfficialTechnologyDefinition {
|
|
4
|
+
id: string;
|
|
5
|
+
aliases: string[];
|
|
6
|
+
fuzzyAliases?: string[];
|
|
7
|
+
applicableLanguages?: string[];
|
|
8
|
+
applicableRuntimes?: string[];
|
|
9
|
+
applicableDatabases?: string[];
|
|
10
|
+
packages: string[];
|
|
11
|
+
frameworks: string[];
|
|
12
|
+
owners: string[];
|
|
13
|
+
repositories: string[];
|
|
14
|
+
/** Exact provider candidate identities and primary paths reviewed for source validation. */
|
|
15
|
+
reviewedSkills?: Array<{
|
|
16
|
+
slug: string;
|
|
17
|
+
primaryPaths: string[];
|
|
18
|
+
}>;
|
|
19
|
+
queries: string[];
|
|
20
|
+
}
|
|
21
|
+
export declare const OFFICIAL_TECHNOLOGIES: readonly OfficialTechnologyDefinition[];
|
|
22
|
+
export declare function technologyDefinition(id: string): OfficialTechnologyDefinition | undefined;
|
|
23
|
+
export declare const OFFICIAL_SKILL_REPOSITORIES: string[];
|
|
24
|
+
export declare function reviewedCatalogSkill(candidate: Pick<SkillCandidate, 'source' | 'slug'>): {
|
|
25
|
+
slug: string;
|
|
26
|
+
primaryPaths: string[];
|
|
27
|
+
} | undefined;
|
|
28
|
+
/** Resolve only repository identities already pinned in Kiokuko's local catalog. */
|
|
29
|
+
export declare function requirementForOfficialSkill(candidate: Pick<SkillCandidate, 'source' | 'slug' | 'name'>): SkillRequirement | undefined;
|
|
30
|
+
export declare function requirementsFromFingerprint(fingerprint: ProjectFingerprint): SkillRequirement[];
|
|
31
|
+
//# sourceMappingURL=official-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"official-catalog.d.ts","sourceRoot":"","sources":["../../src/skills/official-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,4FAA4F;IAC5F,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACjE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,eAAO,MAAM,qBAAqB,EAAE,SAAS,4BAA4B,EAgBxE,CAAC;AAyBF,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,4BAA4B,GAAG,SAAS,CAEzF;AAED,eAAO,MAAM,2BAA2B,UAAiF,CAAC;AAE1H,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAS7I;AAWD,oFAAoF;AACpF,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG,gBAAgB,GAAG,SAAS,CAsBrI;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,kBAAkB,GAAG,gBAAgB,EAAE,CAwB/F"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { compareCanonicalStrings } from '../serialization/validate.js';
|
|
2
|
+
export const OFFICIAL_TECHNOLOGIES = [
|
|
3
|
+
{ id: 'svelte', aliases: ['svelte'], fuzzyAliases: ['svelte'], applicableLanguages: ['JavaScript', 'TypeScript'], applicableRuntimes: ['Node.js'], packages: ['svelte'], frameworks: ['Svelte'], owners: ['sveltejs'], repositories: ['sveltejs/ai-tools'], reviewedSkills: [{ slug: 'svelte-code-writer', primaryPaths: ['skills/svelte-code-writer/SKILL.md', 'tools/skills/svelte-code-writer/SKILL.md'] }], queries: ['svelte'] },
|
|
4
|
+
{ id: 'sveltekit', aliases: ['sveltekit', 'svelte'], fuzzyAliases: ['sveltekit', 'svelte'], applicableLanguages: ['JavaScript', 'TypeScript'], applicableRuntimes: ['Node.js'], packages: ['@sveltejs/kit'], frameworks: ['SvelteKit'], owners: ['sveltejs'], repositories: ['sveltejs/ai-tools'], reviewedSkills: [{ slug: 'svelte-code-writer', primaryPaths: ['skills/svelte-code-writer/SKILL.md', 'tools/skills/svelte-code-writer/SKILL.md'] }], queries: ['sveltekit', 'svelte'] },
|
|
5
|
+
{ id: 'laravel', aliases: ['laravel'], fuzzyAliases: ['laravel'], applicableLanguages: ['PHP'], applicableRuntimes: ['PHP'], packages: ['laravel/framework'], frameworks: ['Laravel'], owners: ['laravel'], repositories: ['laravel/boost'], reviewedSkills: [{ slug: 'laravel-best-practices', primaryPaths: ['.ai/laravel/skill/laravel-best-practices/SKILL.md'] }], queries: ['laravel', 'laravel testing'] },
|
|
6
|
+
// Upstream framework repositories are not automatically Skill repositories.
|
|
7
|
+
// Keep their verified owners for scoped search, but add a reviewed repository
|
|
8
|
+
// only after its SKILL.md layout has a fixture and has been reviewed.
|
|
9
|
+
{ id: 'react', aliases: ['react'], fuzzyAliases: ['react'], applicableLanguages: ['JavaScript', 'TypeScript'], applicableRuntimes: ['Node.js'], packages: ['react'], frameworks: ['React'], owners: ['facebook'], repositories: [], queries: ['react'] },
|
|
10
|
+
{ id: 'nextjs', aliases: ['next', 'nextjs'], fuzzyAliases: ['nextjs'], applicableLanguages: ['JavaScript', 'TypeScript'], applicableRuntimes: ['Node.js'], packages: ['next'], frameworks: ['Next.js'], owners: ['vercel'], repositories: [], queries: ['nextjs', 'react'] },
|
|
11
|
+
{ id: 'postgresql', aliases: ['postgres', 'postgresql'], fuzzyAliases: ['postgresql'], applicableDatabases: ['PostgreSQL'], packages: ['pg'], frameworks: [], owners: ['postgres'], repositories: [], queries: ['postgresql'] },
|
|
12
|
+
{ id: 'mysql', aliases: ['mysql'], fuzzyAliases: ['mysql'], applicableDatabases: ['MySQL'], packages: ['mysql2'], frameworks: [], owners: ['mysql'], repositories: [], queries: ['mysql'] },
|
|
13
|
+
{ id: 'sqlite', aliases: ['sqlite'], fuzzyAliases: ['sqlite'], applicableDatabases: ['SQLite'], packages: ['sqlite3', 'better-sqlite3'], frameworks: [], owners: ['sqlite'], repositories: [], queries: ['sqlite'] },
|
|
14
|
+
{ id: 'typescript', aliases: ['typescript'], fuzzyAliases: ['typescript'], applicableLanguages: ['TypeScript'], applicableRuntimes: ['Node.js'], packages: ['typescript'], frameworks: [], owners: ['microsoft'], repositories: [], queries: ['typescript'] },
|
|
15
|
+
{ id: 'python', aliases: ['python'], fuzzyAliases: ['python'], applicableLanguages: ['Python'], applicableRuntimes: ['Python'], packages: [], frameworks: [], owners: ['python'], repositories: [], queries: ['python'] },
|
|
16
|
+
{ id: 'go', aliases: ['go', 'golang'], fuzzyAliases: ['golang'], applicableLanguages: ['Go'], applicableRuntimes: ['Go'], packages: [], frameworks: [], owners: ['golang'], repositories: [], queries: ['go'] },
|
|
17
|
+
{ id: 'rust', aliases: ['rust'], fuzzyAliases: ['rust'], applicableLanguages: ['Rust'], applicableRuntimes: ['Rust'], packages: [], frameworks: [], owners: ['rust-lang'], repositories: [], queries: ['rust'] },
|
|
18
|
+
];
|
|
19
|
+
function unique(values) { return [...new Set(values)]; }
|
|
20
|
+
function norm(value) { return value.normalize('NFKC').toLowerCase(); }
|
|
21
|
+
function matches(value, candidates) { const current = norm(value); return candidates.some((candidate) => norm(candidate) === current); }
|
|
22
|
+
function matchingValues(targets, actual) {
|
|
23
|
+
if (targets === undefined)
|
|
24
|
+
return undefined;
|
|
25
|
+
const values = targets.filter((target) => actual.some((value) => matches(value, [target])));
|
|
26
|
+
return values.length > 0 ? values : undefined;
|
|
27
|
+
}
|
|
28
|
+
function applicability(definition, fingerprint) {
|
|
29
|
+
const languages = matchingValues(definition.applicableLanguages, fingerprint.languages);
|
|
30
|
+
const runtimes = matchingValues(definition.applicableRuntimes, fingerprint.runtimes);
|
|
31
|
+
const frameworks = fingerprint.frameworks.filter((item) => definition.frameworks.some((name) => matches(item.name, [name])));
|
|
32
|
+
const databases = matchingValues(definition.applicableDatabases, fingerprint.databases);
|
|
33
|
+
return {
|
|
34
|
+
...(languages === undefined ? {} : { languages }),
|
|
35
|
+
...(runtimes === undefined ? {} : { runtimes }),
|
|
36
|
+
...(frameworks.length > 0 ? { frameworks } : definition.frameworks.length > 0 ? { frameworks: definition.frameworks.map((name) => ({ name })) } : {}),
|
|
37
|
+
...(databases === undefined ? {} : { databases }),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export function technologyDefinition(id) {
|
|
41
|
+
return OFFICIAL_TECHNOLOGIES.find((item) => item.id === id);
|
|
42
|
+
}
|
|
43
|
+
export const OFFICIAL_SKILL_REPOSITORIES = unique(OFFICIAL_TECHNOLOGIES.flatMap((definition) => definition.repositories));
|
|
44
|
+
export function reviewedCatalogSkill(candidate) {
|
|
45
|
+
const matches = OFFICIAL_TECHNOLOGIES.flatMap((definition) => definition.repositories.some((repository) => norm(repository) === norm(candidate.source))
|
|
46
|
+
? (definition.reviewedSkills ?? []).filter((skill) => skill.slug === candidate.slug)
|
|
47
|
+
: []);
|
|
48
|
+
if (matches.length === 0)
|
|
49
|
+
return undefined;
|
|
50
|
+
const first = matches[0];
|
|
51
|
+
const primaryPaths = unique(matches.flatMap((match) => match.primaryPaths));
|
|
52
|
+
return { slug: first.slug, primaryPaths };
|
|
53
|
+
}
|
|
54
|
+
function genericApplicability(definition) {
|
|
55
|
+
return {
|
|
56
|
+
...(definition.applicableLanguages === undefined ? {} : { languages: [...definition.applicableLanguages] }),
|
|
57
|
+
...(definition.applicableRuntimes === undefined ? {} : { runtimes: [...definition.applicableRuntimes] }),
|
|
58
|
+
...(definition.frameworks.length === 0 ? {} : { frameworks: definition.frameworks.map((name) => ({ name })) }),
|
|
59
|
+
...(definition.applicableDatabases === undefined ? {} : { databases: [...definition.applicableDatabases] }),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/** Resolve only repository identities already pinned in Kiokuko's local catalog. */
|
|
63
|
+
export function requirementForOfficialSkill(candidate) {
|
|
64
|
+
const definitions = OFFICIAL_TECHNOLOGIES.filter((definition) => definition.repositories.some((repository) => norm(repository) === norm(candidate.source))
|
|
65
|
+
&& (definition.reviewedSkills ?? []).some((skill) => skill.slug === candidate.slug));
|
|
66
|
+
if (definitions.length === 0)
|
|
67
|
+
return undefined;
|
|
68
|
+
const tokens = new Set(norm(`${candidate.slug} ${candidate.name}`).split(/[^\p{L}\p{N}]+/u).filter(Boolean));
|
|
69
|
+
const definition = [...definitions].sort((left, right) => {
|
|
70
|
+
const score = (item) => (tokens.has(norm(item.id)) ? 10 : 0) + item.aliases.filter((alias) => tokens.has(norm(alias))).length;
|
|
71
|
+
return score(right) - score(left) || right.id.length - left.id.length || compareCanonicalStrings(left.id, right.id);
|
|
72
|
+
})[0];
|
|
73
|
+
return {
|
|
74
|
+
id: definition.id,
|
|
75
|
+
technology: definition.id,
|
|
76
|
+
aliases: unique([definition.id, ...definition.aliases, ...definition.frameworks]),
|
|
77
|
+
...(definition.fuzzyAliases === undefined ? {} : { fuzzyAliases: unique(definition.fuzzyAliases) }),
|
|
78
|
+
queries: unique(definition.queries),
|
|
79
|
+
owners: unique(definition.owners),
|
|
80
|
+
repositories: unique(definition.repositories),
|
|
81
|
+
applicability: genericApplicability(definition),
|
|
82
|
+
signals: definition.packages.length > 0 ? { packages: [...definition.packages] } : {},
|
|
83
|
+
reason: `Local official catalog matched ${candidate.source}.`,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
export function requirementsFromFingerprint(fingerprint) {
|
|
87
|
+
const packageNames = fingerprint.packages.map((item) => item.name);
|
|
88
|
+
const definitions = OFFICIAL_TECHNOLOGIES.filter((definition) => definition.packages.some((name) => packageNames.includes(name))
|
|
89
|
+
|| definition.frameworks.some((name) => fingerprint.frameworks.some((framework) => matches(framework.name, [name])))
|
|
90
|
+
|| definition.id === 'typescript' && fingerprint.tools.some((tool) => norm(tool) === 'typescript')
|
|
91
|
+
|| definition.id === 'python' && fingerprint.languages.includes('Python')
|
|
92
|
+
|| definition.id === 'go' && fingerprint.languages.includes('Go')
|
|
93
|
+
|| definition.id === 'rust' && fingerprint.languages.includes('Rust')
|
|
94
|
+
|| definition.id === 'postgresql' && fingerprint.databases.includes('PostgreSQL')
|
|
95
|
+
|| definition.id === 'mysql' && fingerprint.databases.includes('MySQL')
|
|
96
|
+
|| definition.id === 'sqlite' && fingerprint.databases.includes('SQLite'));
|
|
97
|
+
return definitions.map((definition) => ({
|
|
98
|
+
id: definition.id,
|
|
99
|
+
technology: definition.id,
|
|
100
|
+
aliases: unique([definition.id, ...definition.aliases, ...definition.frameworks]),
|
|
101
|
+
...(definition.fuzzyAliases === undefined ? {} : { fuzzyAliases: unique(definition.fuzzyAliases) }),
|
|
102
|
+
queries: unique(definition.queries),
|
|
103
|
+
owners: unique(definition.owners),
|
|
104
|
+
repositories: unique(definition.repositories),
|
|
105
|
+
applicability: applicability(definition, fingerprint),
|
|
106
|
+
signals: definition.packages.length > 0 ? { packages: [...definition.packages] } : {},
|
|
107
|
+
reason: `Project fingerprint detected ${definition.id}.`,
|
|
108
|
+
}));
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=official-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"official-catalog.js","sourceRoot":"","sources":["../../src/skills/official-catalog.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAmBvE,MAAM,CAAC,MAAM,qBAAqB,GAA4C;IAC5E,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC,oCAAoC,EAAE,0CAA0C,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE;IACra,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,CAAC,oCAAoC,EAAE,0CAA0C,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE;IACzd,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,CAAC,mDAAmD,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE;IACjZ,4EAA4E;IAC5E,8EAA8E;IAC9E,sEAAsE;IACtE,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE;IACxP,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE;IAC5Q,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE;IAC/N,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE;IAC3L,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE;IACpN,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE;IAC7P,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE;IACzN,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IAC/M,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE;CACjN,CAAC;AAEF,SAAS,MAAM,CAAI,MAAW,IAAS,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,SAAS,IAAI,CAAC,KAAa,IAAY,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACtF,SAAS,OAAO,CAAC,KAAa,EAAE,UAAoB,IAAa,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEnK,SAAS,cAAc,CAAC,OAA6B,EAAE,MAAgB;IACrE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,UAAwC,EAAE,WAA+B;IAC9F,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,mBAAmB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,kBAAkB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACrF,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7H,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,mBAAmB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACxF,OAAO;QACL,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;QACjD,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC/C,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrJ,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;AAE1H,MAAM,UAAU,oBAAoB,CAAC,SAAkD;IACrF,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAC3D,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC;QACpF,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;IAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5E,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAwC;IACpE,OAAO;QACL,GAAG,CAAC,UAAU,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC3G,GAAG,CAAC,UAAU,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACxG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAC9G,GAAG,CAAC,UAAU,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;KAC5G,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,2BAA2B,CAAC,SAA2D;IACrG,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAC9D,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;WACtF,CAAC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7G,MAAM,UAAU,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACvD,MAAM,KAAK,GAAG,CAAC,IAAkC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5J,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC;IACP,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,UAAU,EAAE,UAAU,CAAC,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QACjF,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACnG,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;QACjC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;QAC7C,aAAa,EAAE,oBAAoB,CAAC,UAAU,CAAC;QAC/C,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACrF,MAAM,EAAE,kCAAkC,SAAS,CAAC,MAAM,GAAG;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,WAA+B;IACzE,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAC9D,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;WAC5D,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;WACjH,UAAU,CAAC,EAAE,KAAK,YAAY,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,YAAY,CAAC;WAC/F,UAAU,CAAC,EAAE,KAAK,QAAQ,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;WACtE,UAAU,CAAC,EAAE,KAAK,IAAI,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;WAC9D,UAAU,CAAC,EAAE,KAAK,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;WAClE,UAAU,CAAC,EAAE,KAAK,YAAY,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;WAC9E,UAAU,CAAC,EAAE,KAAK,OAAO,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;WACpE,UAAU,CAAC,EAAE,KAAK,QAAQ,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7E,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACtC,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,UAAU,EAAE,UAAU,CAAC,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QACjF,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACnG,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;QACjC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;QAC7C,aAAa,EAAE,aAAa,CAAC,UAAU,EAAE,WAAW,CAAC;QACrD,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACrF,MAAM,EAAE,gCAAgC,UAAU,CAAC,EAAE,GAAG;KACzD,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { SkillAuditResult, SkillCandidate, SkillProviderFailureCode } from '../types.js';
|
|
2
|
+
export declare class SkillProviderError extends Error {
|
|
3
|
+
readonly code: SkillProviderFailureCode;
|
|
4
|
+
readonly retryAfterSeconds: number | null;
|
|
5
|
+
constructor(code: SkillProviderFailureCode, retryAfterSeconds?: number | null);
|
|
6
|
+
}
|
|
7
|
+
export declare function verifiedOfficialRepositories(values?: string[]): ReadonlySet<string>;
|
|
8
|
+
export declare function readSkillProviderJson(response: Response): Promise<unknown>;
|
|
9
|
+
export declare function parseSkillsShCompatibilityResponse(value: unknown, provider: string, expected: {
|
|
10
|
+
query: string;
|
|
11
|
+
limit: number;
|
|
12
|
+
}, officialRepositories: ReadonlySet<string>): SkillCandidate[];
|
|
13
|
+
export declare function parseSkillsShV1SearchResponse(value: unknown, provider: string, expected: {
|
|
14
|
+
query: string;
|
|
15
|
+
limit: number;
|
|
16
|
+
}, officialRepositories: ReadonlySet<string>): SkillCandidate[];
|
|
17
|
+
export declare function parseSkillsShV1CuratedResponse(value: unknown, provider: string, officialRepositories: ReadonlySet<string>): SkillCandidate[];
|
|
18
|
+
export declare function parseSkillsShV1AuditResponse(value: unknown, expected: {
|
|
19
|
+
source: string;
|
|
20
|
+
slug: string;
|
|
21
|
+
}): SkillAuditResult;
|
|
22
|
+
/** Strictly parse Kiokuko's own cached candidate shape. */
|
|
23
|
+
export declare function parseSkillCandidates(value: unknown, provider: string, provenance: 'search' | 'curated'): SkillCandidate[];
|
|
24
|
+
export declare function cacheKey(input: {
|
|
25
|
+
provider: string;
|
|
26
|
+
query: string;
|
|
27
|
+
owner?: string | null;
|
|
28
|
+
mode: string;
|
|
29
|
+
}): string;
|
|
30
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/skills/providers/schema.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAK9F,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;gBAC9B,IAAI,EAAE,wBAAwB,EAAE,iBAAiB,GAAE,MAAM,GAAG,IAAW;CAMpF;AAsGD,wBAAgB,4BAA4B,CAAC,MAAM,GAAE,MAAM,EAAgC,GAAG,WAAW,CAAC,MAAM,CAAC,CAahH;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CA0ChF;AAeD,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAC1C,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,GACxC,cAAc,EAAE,CAUlB;AAiCD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAC1C,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,GACxC,cAAc,EAAE,CASlB;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,cAAc,EAAE,CAwB5I;AAOD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CA6BzH;AAED,2DAA2D;AAC3D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,GAAG,cAAc,EAAE,CAkBzH;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEhH"}
|