@tyvm/knowhow 0.0.159 → 0.0.160
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/package.json +1 -1
- package/ts_build/package.json +1 -1
- package/ts_build/src/chat/CliChatService.d.ts +2 -1
- package/ts_build/src/chat/CliChatService.js +29 -3
- package/ts_build/src/chat/CliChatService.js.map +1 -1
- package/ts_build/src/chat/modules/AgentModule.js +21 -17
- package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
- package/ts_build/src/chat/renderer/ConsoleRenderer.js +32 -25
- package/ts_build/src/chat/renderer/ConsoleRenderer.js.map +1 -1
- package/ts_build/src/logger.d.ts +1 -0
- package/ts_build/src/logger.js +13 -1
- package/ts_build/src/logger.js.map +1 -1
- package/ts_build/src/utils/InputQueueManager.d.ts +8 -1
- package/ts_build/src/utils/InputQueueManager.js +72 -2
- package/ts_build/src/utils/InputQueueManager.js.map +1 -1
- package/ts_build/src/utils/index.d.ts +3 -1
- package/ts_build/src/utils/index.js +11 -3
- package/ts_build/src/utils/index.js.map +1 -1
- package/CONFIG.md +0 -429
- package/PROCESSING.md +0 -450
- package/WORKER.md +0 -260
- package/autodoc/README.md +0 -324
- package/autodoc/chat-guide.md +0 -444
- package/autodoc/cli-reference.md +0 -720
- package/autodoc/config-reference.md +0 -642
- package/autodoc/embeddings-guide.md +0 -467
- package/autodoc/generate-guide.md +0 -437
- package/autodoc/language-plugin-guide.md +0 -417
- package/autodoc/modules-guide.md +0 -379
- package/autodoc/plugins-guide.md +0 -721
- package/autodoc/quickstart-guide.md +0 -126
- package/autodoc/skills-guide.md +0 -584
- package/autodoc/worker-guide.md +0 -519
- package/docs/input-queue-manager.md +0 -142
- package/docs/multi-worker-management.md +0 -142
- package/docs/shell-commands.md +0 -174
- package/jest.config.js +0 -19
- package/jest.manual.config.js +0 -19
- package/scripts/README.md +0 -119
- package/scripts/build-for-node.sh +0 -148
- package/scripts/cache-miss-debug.ts +0 -365
- package/scripts/check-isolated-deps.sh +0 -69
- package/scripts/check-model-pricing.ts +0 -509
- package/scripts/compare-openrouter-coverage.ts +0 -576
- package/scripts/migrate-usage-json.js +0 -147
- package/scripts/publish.sh +0 -86
- package/scripts/restore_keys.sh +0 -59
- package/scripts/test-repetition-hint.ts +0 -302
- package/scripts/unset_keys.sh +0 -60
- package/src/agents/base/base.ts +0 -1963
- package/src/agents/base/prompt.ts +0 -55
- package/src/agents/configurable/ConfigAgent.ts +0 -24
- package/src/agents/developer/developer.ts +0 -76
- package/src/agents/historyRollback.ts +0 -36
- package/src/agents/index.ts +0 -52
- package/src/agents/interface.ts +0 -11
- package/src/agents/patcher/codebase.md +0 -27
- package/src/agents/patcher/patcher.ts +0 -131
- package/src/agents/researcher/researcher.ts +0 -115
- package/src/agents/setup/setup.ts +0 -63
- package/src/agents/tools/addInternalTools.ts +0 -21
- package/src/agents/tools/agentCall.ts +0 -34
- package/src/agents/tools/aiClient.ts +0 -178
- package/src/agents/tools/askHuman.ts +0 -10
- package/src/agents/tools/callPlugin.ts +0 -10
- package/src/agents/tools/connectAgent.ts +0 -355
- package/src/agents/tools/embeddingSearch.ts +0 -6
- package/src/agents/tools/execCommand.ts +0 -162
- package/src/agents/tools/fileSearch.ts +0 -35
- package/src/agents/tools/finalAnswer.ts +0 -4
- package/src/agents/tools/googleSearch.ts +0 -243
- package/src/agents/tools/index.ts +0 -33
- package/src/agents/tools/language/definitions.ts +0 -105
- package/src/agents/tools/language/index.ts +0 -20
- package/src/agents/tools/lazy/definitions.ts +0 -72
- package/src/agents/tools/lazy/disableTools.ts +0 -16
- package/src/agents/tools/lazy/enableTools.ts +0 -16
- package/src/agents/tools/lazy/index.ts +0 -3
- package/src/agents/tools/lazy/listAvailableTools.ts +0 -17
- package/src/agents/tools/lintFile.ts +0 -19
- package/src/agents/tools/list.ts +0 -739
- package/src/agents/tools/loadImageAsBase64.ts +0 -83
- package/src/agents/tools/loadWebpage.ts +0 -19
- package/src/agents/tools/mcp/connectMcpServer.ts +0 -40
- package/src/agents/tools/mcp/definitions.ts +0 -67
- package/src/agents/tools/mcp/disconnectMcpServer.ts +0 -40
- package/src/agents/tools/mcp/index.ts +0 -3
- package/src/agents/tools/mcp/listAvailableMcpServers.ts +0 -28
- package/src/agents/tools/minimal/callTool.ts +0 -45
- package/src/agents/tools/minimal/definitions.ts +0 -50
- package/src/agents/tools/minimal/index.ts +0 -3
- package/src/agents/tools/minimal/inspectTools.ts +0 -27
- package/src/agents/tools/modifyFile.ts +0 -53
- package/src/agents/tools/observe.ts +0 -247
- package/src/agents/tools/patch.ts +0 -1287
- package/src/agents/tools/readBlocks.ts +0 -83
- package/src/agents/tools/readFile.ts +0 -105
- package/src/agents/tools/replyToParent.ts +0 -123
- package/src/agents/tools/runGenerate.ts +0 -210
- package/src/agents/tools/scanFile.ts +0 -16
- package/src/agents/tools/sendAgentMessage.ts +0 -139
- package/src/agents/tools/skills.ts +0 -79
- package/src/agents/tools/startAgentTask.ts +0 -393
- package/src/agents/tools/stringReplace.ts +0 -105
- package/src/agents/tools/textSearch.ts +0 -128
- package/src/agents/tools/types/fileblock.ts +0 -5
- package/src/agents/tools/visionTool.ts +0 -35
- package/src/agents/tools/waitForAgentCompleted.ts +0 -270
- package/src/agents/tools/writeFile.ts +0 -106
- package/src/agents/tools/ycmd/client.ts +0 -608
- package/src/agents/tools/ycmd/definitions.ts +0 -294
- package/src/agents/tools/ycmd/detection.ts +0 -211
- package/src/agents/tools/ycmd/index.ts +0 -11
- package/src/agents/tools/ycmd/installer.ts +0 -251
- package/src/agents/tools/ycmd/server.ts +0 -545
- package/src/agents/tools/ycmd/serverManager.ts +0 -316
- package/src/agents/tools/ycmd/tools/completion.ts +0 -113
- package/src/agents/tools/ycmd/tools/diagnostics.ts +0 -166
- package/src/agents/tools/ycmd/tools/getLocations.ts +0 -173
- package/src/agents/tools/ycmd/tools/goto.ts +0 -169
- package/src/agents/tools/ycmd/tools/refactor.ts +0 -204
- package/src/agents/tools/ycmd/tools/signature.ts +0 -174
- package/src/agents/tools/ycmd/tools/start.ts +0 -95
- package/src/agents/tools/ycmd/utils/pathUtils.ts +0 -59
- package/src/ai.ts +0 -306
- package/src/auth/browserLogin.ts +0 -406
- package/src/auth/environmentAuth.ts +0 -51
- package/src/auth/errors.ts +0 -6
- package/src/auth/jwtStore.ts +0 -70
- package/src/auth/keyAuth.ts +0 -142
- package/src/auth/keyManager.ts +0 -331
- package/src/auth/registerIdentity.ts +0 -67
- package/src/auth/spinner.ts +0 -23
- package/src/chat/CliChatService.ts +0 -438
- package/src/chat/modules/AgentModule.ts +0 -1664
- package/src/chat/modules/AskModule.ts +0 -98
- package/src/chat/modules/BaseChatModule.ts +0 -65
- package/src/chat/modules/ClipboardImageModule.ts +0 -136
- package/src/chat/modules/CustomCommandsModule.ts +0 -80
- package/src/chat/modules/InternalChatModule.ts +0 -216
- package/src/chat/modules/RemoteSyncModule.ts +0 -482
- package/src/chat/modules/RendererModule.ts +0 -139
- package/src/chat/modules/SearchModule.ts +0 -168
- package/src/chat/modules/SessionsModule.ts +0 -969
- package/src/chat/modules/SetupModule.ts +0 -185
- package/src/chat/modules/ShellCommandModule.ts +0 -98
- package/src/chat/modules/SystemModule.ts +0 -161
- package/src/chat/modules/ToolCommandModule.ts +0 -102
- package/src/chat/modules/VoiceModule.ts +0 -70
- package/src/chat/modules/index.ts +0 -8
- package/src/chat/renderer/CompactRenderer.ts +0 -229
- package/src/chat/renderer/ConsoleRenderer.ts +0 -160
- package/src/chat/renderer/FancyRenderer.ts +0 -440
- package/src/chat/renderer/PlainRenderer.ts +0 -218
- package/src/chat/renderer/index.ts +0 -6
- package/src/chat/renderer/loadRenderer.ts +0 -316
- package/src/chat/renderer/messagesToRenderEvents.ts +0 -96
- package/src/chat/renderer/types.ts +0 -99
- package/src/chat/types.ts +0 -146
- package/src/chat.ts +0 -140
- package/src/cli.ts +0 -180
- package/src/clients/anthropic.ts +0 -772
- package/src/clients/attribution.ts +0 -53
- package/src/clients/cerebras.ts +0 -10
- package/src/clients/contextLimits.ts +0 -263
- package/src/clients/copilot.ts +0 -23
- package/src/clients/deepseek.ts +0 -16
- package/src/clients/fireworks.ts +0 -71
- package/src/clients/gemini.ts +0 -1169
- package/src/clients/github.ts +0 -16
- package/src/clients/groq.ts +0 -15
- package/src/clients/http.ts +0 -719
- package/src/clients/index.ts +0 -1153
- package/src/clients/knowhow.ts +0 -130
- package/src/clients/knowhowMcp.ts +0 -118
- package/src/clients/llama.ts +0 -16
- package/src/clients/meta.ts +0 -27
- package/src/clients/mistral.ts +0 -16
- package/src/clients/nvidia.ts +0 -16
- package/src/clients/openai.ts +0 -1186
- package/src/clients/openrouter.ts +0 -24
- package/src/clients/pricing/anthropic.ts +0 -149
- package/src/clients/pricing/cerebras.ts +0 -11
- package/src/clients/pricing/copilot.ts +0 -60
- package/src/clients/pricing/deepseek.ts +0 -15
- package/src/clients/pricing/fireworks.ts +0 -182
- package/src/clients/pricing/github.ts +0 -69
- package/src/clients/pricing/google.ts +0 -385
- package/src/clients/pricing/groq.ts +0 -56
- package/src/clients/pricing/index.ts +0 -44
- package/src/clients/pricing/llama.ts +0 -18
- package/src/clients/pricing/meta.ts +0 -12
- package/src/clients/pricing/mistral.ts +0 -34
- package/src/clients/pricing/models.ts +0 -25
- package/src/clients/pricing/nvidia.ts +0 -102
- package/src/clients/pricing/openai.ts +0 -409
- package/src/clients/pricing/openrouter.ts +0 -36
- package/src/clients/pricing/qwen.ts +0 -80
- package/src/clients/pricing/types.ts +0 -125
- package/src/clients/pricing/xai.ts +0 -137
- package/src/clients/qwen.ts +0 -16
- package/src/clients/responseMetadata.ts +0 -221
- package/src/clients/types.ts +0 -531
- package/src/clients/withRetry.ts +0 -89
- package/src/clients/xai.ts +0 -693
- package/src/cloudWorker.ts +0 -394
- package/src/commands/agent.ts +0 -342
- package/src/commands/agents.ts +0 -1037
- package/src/commands/behaviors.ts +0 -47
- package/src/commands/convert.ts +0 -291
- package/src/commands/hash.ts +0 -179
- package/src/commands/mcp.ts +0 -743
- package/src/commands/misc.ts +0 -373
- package/src/commands/modules.ts +0 -704
- package/src/commands/processes.ts +0 -248
- package/src/commands/remote.ts +0 -77
- package/src/commands/replay.ts +0 -503
- package/src/commands/sandbox.ts +0 -566
- package/src/commands/services.ts +0 -168
- package/src/commands/skills.ts +0 -107
- package/src/commands/workers.ts +0 -168
- package/src/config.ts +0 -468
- package/src/conversion.ts +0 -69
- package/src/dataset/diffs/README.md +0 -12
- package/src/dataset/diffs/debug-errors.ts +0 -29
- package/src/dataset/diffs/debug.ts +0 -64
- package/src/dataset/diffs/generate.ts +0 -71
- package/src/dataset/diffs/jsonl.ts +0 -53
- package/src/dataset/diffs/test.ts +0 -194
- package/src/embeddings.ts +0 -494
- package/src/fileSync.ts +0 -369
- package/src/generate.ts +0 -529
- package/src/hashes.ts +0 -180
- package/src/index.ts +0 -261
- package/src/logger.ts +0 -197
- package/src/login.ts +0 -209
- package/src/microphone.ts +0 -141
- package/src/migrations.ts +0 -151
- package/src/plugins/AgentsMdPlugin.ts +0 -118
- package/src/plugins/GitPlugin.ts +0 -598
- package/src/plugins/LinterPlugin.ts +0 -214
- package/src/plugins/PluginBase.ts +0 -70
- package/src/plugins/SkillsPlugin.ts +0 -37
- package/src/plugins/embedding.ts +0 -82
- package/src/plugins/exec.ts +0 -70
- package/src/plugins/language.ts +0 -290
- package/src/plugins/plugins.ts +0 -175
- package/src/plugins/tmux.ts +0 -132
- package/src/plugins/types.ts +0 -36
- package/src/plugins/url.ts +0 -101
- package/src/plugins/vim.ts +0 -89
- package/src/processes/ProcessManager.ts +0 -96
- package/src/processes/managedProcessShim.ts +0 -138
- package/src/processors/Base64ImageDetector.ts +0 -502
- package/src/processors/CustomVariables.ts +0 -693
- package/src/processors/GemmaToolProcessor.ts +0 -163
- package/src/processors/HarmonyToolProcessor.ts +0 -264
- package/src/processors/JsonCompressor.ts +0 -510
- package/src/processors/MinimalToolsMessageProcessor.ts +0 -113
- package/src/processors/TokenCompressor.ts +0 -620
- package/src/processors/ToolResponseCache.ts +0 -322
- package/src/processors/XmlToolCallProcessor.ts +0 -533
- package/src/processors/index.ts +0 -14
- package/src/processors/tools/boundedToolResponse.ts +0 -49
- package/src/processors/tools/grepToolResponse.ts +0 -230
- package/src/processors/tools/index.ts +0 -23
- package/src/processors/tools/jqToolResponse.ts +0 -159
- package/src/processors/tools/listStoredToolResponses.ts +0 -124
- package/src/processors/tools/tailToolResponse.ts +0 -148
- package/src/prompts/BasicCodeDocumenter.ts +0 -1
- package/src/prompts/BasicProjectDocumenter.ts +0 -1
- package/src/prompts/EmbeddingSeachHelper.ts +0 -1
- package/src/prompts/KnowhowConfigExamples.ts +0 -376
- package/src/prompts/index.ts +0 -9
- package/src/remotes.ts +0 -110
- package/src/server/index.ts +0 -16
- package/src/services/AgentService.ts +0 -134
- package/src/services/AgentSyncFs.ts +0 -775
- package/src/services/AgentSyncKnowhowWeb.ts +0 -389
- package/src/services/BehaviorsService.ts +0 -466
- package/src/services/DockerService.ts +0 -511
- package/src/services/EmbeddingService.ts +0 -427
- package/src/services/EmbeddingsService.ts +0 -73
- package/src/services/EventService.ts +0 -279
- package/src/services/ExtensionsService.ts +0 -25
- package/src/services/KnowhowClient.ts +0 -928
- package/src/services/LazyToolsService.ts +0 -210
- package/src/services/Mcp.ts +0 -727
- package/src/services/McpServer.ts +0 -155
- package/src/services/McpWebsocketTransport.ts +0 -87
- package/src/services/MediaProcessorService.ts +0 -669
- package/src/services/MessageProcessor.ts +0 -114
- package/src/services/MinimalToolsService.ts +0 -177
- package/src/services/RuntimeReloadService.ts +0 -31
- package/src/services/S3.ts +0 -61
- package/src/services/SessionManager.ts +0 -358
- package/src/services/SkillsService.ts +0 -822
- package/src/services/SyncedAgentWatcher.ts +0 -124
- package/src/services/SyncerService.ts +0 -191
- package/src/services/TaskRegistry.ts +0 -110
- package/src/services/Tools.ts +0 -580
- package/src/services/TracingService.ts +0 -116
- package/src/services/conversion/ConversionService.ts +0 -757
- package/src/services/conversion/index.ts +0 -2
- package/src/services/conversion/types.ts +0 -87
- package/src/services/flags.ts +0 -51
- package/src/services/index.ts +0 -117
- package/src/services/modules/computerUse.ts +0 -218
- package/src/services/modules/index.ts +0 -314
- package/src/services/modules/types.ts +0 -109
- package/src/services/types.ts +0 -60
- package/src/services/watchers/FsSyncer.ts +0 -199
- package/src/services/watchers/RemoteSyncer.ts +0 -196
- package/src/services/watchers/index.ts +0 -2
- package/src/tunnel.ts +0 -243
- package/src/types.ts +0 -282
- package/src/util/Trace.ts +0 -236
- package/src/utils/InputQueueManager.ts +0 -493
- package/src/utils/errors.ts +0 -0
- package/src/utils/http.ts +0 -150
- package/src/utils/index.ts +0 -111
- package/src/worker.ts +0 -696
- package/src/workerRegistry.ts +0 -152
- package/src/workers/auth/PasskeySetup.ts +0 -181
- package/src/workers/auth/WorkerPasskeyAuth.ts +0 -190
- package/src/workers/auth/WsMiddleware.ts +0 -99
- package/src/workers/auth/authMiddleware.ts +0 -104
- package/src/workers/auth/types.ts +0 -70
- package/src/workers/tools/getChallenge.ts +0 -33
- package/src/workers/tools/index.ts +0 -20
- package/src/workers/tools/listAllowedPorts.ts +0 -30
- package/src/workers/tools/lock.ts +0 -31
- package/src/workers/tools/reloadConfig.ts +0 -84
- package/src/workers/tools/unlock.ts +0 -116
- package/tests/XmlToolCallProcessor.test.ts +0 -468
- package/tests/agents/interrupt.test.ts +0 -200
- package/tests/agents/observe-base.test.ts +0 -183
- package/tests/agents/tools/connectAgent.test.ts +0 -138
- package/tests/agents/tools/observe.test.ts +0 -179
- package/tests/agents/tools/readFile.test.ts +0 -88
- package/tests/agents/tools/replyToParent.test.ts +0 -125
- package/tests/agents/tools/sendAgentMessage.test.ts +0 -99
- package/tests/agents/tools/waitForAgentCompleted.test.ts +0 -147
- package/tests/chat/detach-attach-rendering.test.ts +0 -315
- package/tests/clients/AIClient.test.ts +0 -668
- package/tests/clients/anthropic.test.ts +0 -202
- package/tests/clients/contextLimits.test.ts +0 -97
- package/tests/clients/fireworks.test.ts +0 -65
- package/tests/clients/openai.images.test.ts +0 -105
- package/tests/clients/pricing.test.ts +0 -206
- package/tests/clients/reasoningEffort.test.ts +0 -140
- package/tests/compressor/bigstring.test.ts +0 -450
- package/tests/compressor/bigstring.txt +0 -1
- package/tests/compressor/githubjson.txt +0 -1
- package/tests/compressor/toolResponseCache.test.ts +0 -304
- package/tests/compressor/usageBase64.json +0 -159
- package/tests/compressor/usageBase64.test.ts +0 -175
- package/tests/fixtures/fake-secret.txt +0 -1
- package/tests/manual/agent-events/run-test.ts +0 -203
- package/tests/manual/browser-login/README.md +0 -189
- package/tests/manual/browser-login/test_browser_login_basic.ts +0 -115
- package/tests/manual/browser-login/test_cli_integration.ts +0 -169
- package/tests/manual/browser-login/test_cross_platform_browser.ts +0 -186
- package/tests/manual/browser-login/test_error_scenarios.ts +0 -223
- package/tests/manual/cli/no-env.sh +0 -274
- package/tests/manual/clients/completions.json +0 -1151
- package/tests/manual/clients/completions.test.ts +0 -198
- package/tests/manual/file-edits/figma.test.ts +0 -3
- package/tests/manual/file-edits/fileblocks/readwrite.test.ts +0 -100
- package/tests/manual/file-edits/patching/input.txt +0 -145
- package/tests/manual/file-edits/patching/output.txt +0 -145
- package/tests/manual/file-edits/patching/patch.txt +0 -15
- package/tests/manual/file-edits/patching/unseen.txt +0 -80
- package/tests/manual/file-edits/patching.test.ts +0 -139
- package/tests/manual/modalities/README.md +0 -157
- package/tests/manual/modalities/google.modalities.test.ts +0 -335
- package/tests/manual/modalities/openai.modalities.test.ts +0 -329
- package/tests/manual/modalities/streaming.test.ts +0 -260
- package/tests/manual/modalities/xai.modalities.test.ts +0 -294
- package/tests/manual/test-concurrent-ask.ts +0 -43
- package/tests/manual/ycmd/debug_diagnostics_test.ts +0 -127
- package/tests/manual/ycmd/fixtures/debug_diagnostics.ts +0 -26
- package/tests/manual/ycmd/fixtures/file_change_test.ts +0 -17
- package/tests/manual/ycmd/minimal_advanced_test.ts +0 -108
- package/tests/manual/ycmd/simple_diagnostics_test.ts +0 -61
- package/tests/manual/ycmd/simple_test.ts +0 -74
- package/tests/manual/ycmd/test-typescript-sample.ts +0 -34
- package/tests/manual/ycmd/test_advanced_features.ts +0 -407
- package/tests/manual/ycmd/test_advanced_with_tools.ts +0 -320
- package/tests/manual/ycmd/test_comprehensive_typescript.ts +0 -179
- package/tests/manual/ycmd/test_diagnostics_file_changes.ts +0 -249
- package/tests/manual/ycmd/test_diagnostics_fix.ts +0 -99
- package/tests/manual/ycmd/test_diagnostics_simple.ts +0 -100
- package/tests/manual/ycmd/test_diagnostics_timing.ts +0 -120
- package/tests/manual/ycmd/test_discover_commands.ts +0 -310
- package/tests/manual/ycmd/test_endpoints.ts +0 -115
- package/tests/manual/ycmd/test_final_comprehensive.ts +0 -218
- package/tests/manual/ycmd/test_final_validation.ts +0 -150
- package/tests/manual/ycmd/test_implementation.js +0 -42
- package/tests/manual/ycmd/test_individual_ycmd_tool.ts +0 -39
- package/tests/manual/ycmd/test_server_manager.ts +0 -52
- package/tests/manual/ycmd/test_simple_debug.ts +0 -86
- package/tests/manual/ycmd/test_tsserver_workflow.js +0 -83
- package/tests/manual/ycmd/test_tsserver_workflow.ts +0 -122
- package/tests/manual/ycmd/test_typescript_simple.ts +0 -48
- package/tests/manual/ycmd/test_typescript_ycmd.ts +0 -105
- package/tests/manual/ycmd/test_workspace_config.ts +0 -90
- package/tests/manual/ycmd/test_ycmd_auto_start.ts +0 -137
- package/tests/manual/ycmd/test_ycmd_comprehensive.ts +0 -73
- package/tests/manual/ycmd/test_ycmd_connection.py +0 -10
- package/tests/manual/ycmd/test_ycmd_direct.ts +0 -142
- package/tests/manual/ycmd/test_ycmd_experiment.ts +0 -48
- package/tests/manual/ycmd/test_ycmd_final.ts +0 -200
- package/tests/manual/ycmd/test_ycmd_fixed.py +0 -18
- package/tests/manual/ycmd/test_ycmd_integration.ts +0 -112
- package/tests/manual/ycmd/test_ycmd_simple.ts +0 -45
- package/tests/manual/ycmd/test_ycmd_usage.py +0 -27
- package/tests/manual/ycmd/working_simple_test.ts +0 -134
- package/tests/patching/corrupted.test.ts +0 -78
- package/tests/patching/fixtures/transcript-mangles/agent-sync-fs-nested-catch.json +0 -9
- package/tests/patching/fixtures/transcript-mangles/automation-functions-crossed.json +0 -9
- package/tests/patching/fixtures/transcript-mangles/fruit-ninja-confirmed-retirement.json +0 -8
- package/tests/patching/imports.patch.txt +0 -11
- package/tests/patching/imports.test.ts +0 -43
- package/tests/patching/imports.txt +0 -11
- package/tests/patching/interface.patch.txt +0 -15
- package/tests/patching/interface.txt +0 -7
- package/tests/patching/patchFileOutput.test.ts +0 -328
- package/tests/patching/regression-2026.test.ts +0 -752
- package/tests/patching/transcriptMangleRegression.test.ts +0 -125
- package/tests/plugins/language/languagePlugin-content-triggers.test.ts +0 -346
- package/tests/plugins/language/languagePlugin-integration.test.ts +0 -471
- package/tests/plugins/language/languagePlugin.test.ts +0 -385
- package/tests/processes/managedProcessShim.test.ts +0 -59
- package/tests/processors/Base64ImageDetector.test.ts +0 -979
- package/tests/processors/CustomVariables.test.ts +0 -981
- package/tests/processors/CustomVariablesBenchmark.test.ts +0 -237
- package/tests/processors/HarmonyToolProcessor.test.ts +0 -490
- package/tests/processors/TokenCompressor.test.ts +0 -674
- package/tests/processors/ToolResponseCache.test.ts +0 -864
- package/tests/processors/tools/boundedRetrievalTools.test.ts +0 -68
- package/tests/processors/tools/grepToolResponse.test.ts +0 -159
- package/tests/services/ConversionService.test.ts +0 -154
- package/tests/services/DockerService.test.ts +0 -24
- package/tests/services/Tools.test.ts +0 -1738
- package/tests/services/ToolsService.setFunction.test.ts +0 -68
- package/tests/services/WorkerReloadConfig.test.ts +0 -141
- package/tests/test.spec.ts +0 -163
- package/tests/unit/InputQueueManager.test.ts +0 -174
- package/tests/unit/McpWebsocketTransport.test.ts +0 -56
- package/tests/unit/agents/historyRollback.test.ts +0 -53
- package/tests/unit/agents/tools/loadImageAsBase64.test.ts +0 -44
- package/tests/unit/auth/jwtStore.test.ts +0 -55
- package/tests/unit/auth/keyAuth.test.ts +0 -152
- package/tests/unit/auth/keyManager.test.ts +0 -130
- package/tests/unit/auth/registerIdentity.test.ts +0 -99
- package/tests/unit/chat/ToolCommandModule.test.ts +0 -71
- package/tests/unit/chat/historyCommandArgs.test.ts +0 -37
- package/tests/unit/clients/AIClient.test.ts +0 -454
- package/tests/unit/clients/anthropic.responseMetadata.test.ts +0 -81
- package/tests/unit/clients/attribution.test.ts +0 -185
- package/tests/unit/clients/http.responseMetadata.test.ts +0 -86
- package/tests/unit/clients/openai.responseMetadata.test.ts +0 -90
- package/tests/unit/clients/responseMetadata.test.ts +0 -123
- package/tests/unit/clients/withRetry.test.ts +0 -319
- package/tests/unit/commands/agents.test.ts +0 -111
- package/tests/unit/commands/github-credentials.test.ts +0 -210
- package/tests/unit/commands/misc.test.ts +0 -85
- package/tests/unit/commands/remote.test.ts +0 -79
- package/tests/unit/commands/sandbox.test.ts +0 -350
- package/tests/unit/hashes.test.ts +0 -23
- package/tests/unit/input-queue.test.ts +0 -80
- package/tests/unit/login.test.ts +0 -218
- package/tests/unit/modules/moduleLoading.test.ts +0 -305
- package/tests/unit/plugins/pluginLoading.test.ts +0 -97
- package/tests/unit/services/AgentSyncKnowhowWeb.test.ts +0 -38
- package/tests/unit/services/KnowhowClient.test.ts +0 -84
- package/tests/unit/services/LazyToolsService.test.ts +0 -53
- package/tests/unit/services/Mcp.test.ts +0 -56
- package/tests/unit/services/MinimalToolsService.test.ts +0 -424
- package/tests/unit/services/RuntimeReloadService.test.ts +0 -29
- package/tests/unit/services/SessionManager.test.ts +0 -43
- package/tests/unit/services/SyncedAgentWatcher.test.ts +0 -89
- package/tests/unit/services/SyncerService.test.ts +0 -45
- package/tests/unit/tunnel.test.ts +0 -51
- package/tests/unit/util/Trace.test.ts +0 -119
- package/tests/unit/utils/http.test.ts +0 -43
- package/ts_build/tests/XmlToolCallProcessor.test.d.ts +0 -1
- package/ts_build/tests/XmlToolCallProcessor.test.js +0 -376
- package/ts_build/tests/XmlToolCallProcessor.test.js.map +0 -1
- package/ts_build/tests/agents/interrupt.test.d.ts +0 -14
- package/ts_build/tests/agents/interrupt.test.js +0 -136
- package/ts_build/tests/agents/interrupt.test.js.map +0 -1
- package/ts_build/tests/agents/observe-base.test.d.ts +0 -1
- package/ts_build/tests/agents/observe-base.test.js +0 -149
- package/ts_build/tests/agents/observe-base.test.js.map +0 -1
- package/ts_build/tests/agents/tools/connectAgent.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/connectAgent.test.js +0 -142
- package/ts_build/tests/agents/tools/connectAgent.test.js.map +0 -1
- package/ts_build/tests/agents/tools/observe.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/observe.test.js +0 -148
- package/ts_build/tests/agents/tools/observe.test.js.map +0 -1
- package/ts_build/tests/agents/tools/readFile.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/readFile.test.js +0 -90
- package/ts_build/tests/agents/tools/readFile.test.js.map +0 -1
- package/ts_build/tests/agents/tools/replyToParent.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/replyToParent.test.js +0 -116
- package/ts_build/tests/agents/tools/replyToParent.test.js.map +0 -1
- package/ts_build/tests/agents/tools/sendAgentMessage.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/sendAgentMessage.test.js +0 -112
- package/ts_build/tests/agents/tools/sendAgentMessage.test.js.map +0 -1
- package/ts_build/tests/agents/tools/waitForAgentCompleted.test.d.ts +0 -1
- package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js +0 -147
- package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js.map +0 -1
- package/ts_build/tests/chat/detach-attach-rendering.test.d.ts +0 -1
- package/ts_build/tests/chat/detach-attach-rendering.test.js +0 -168
- package/ts_build/tests/chat/detach-attach-rendering.test.js.map +0 -1
- package/ts_build/tests/clients/AIClient.test.d.ts +0 -1
- package/ts_build/tests/clients/AIClient.test.js +0 -483
- package/ts_build/tests/clients/AIClient.test.js.map +0 -1
- package/ts_build/tests/clients/anthropic.test.d.ts +0 -1
- package/ts_build/tests/clients/anthropic.test.js +0 -159
- package/ts_build/tests/clients/anthropic.test.js.map +0 -1
- package/ts_build/tests/clients/contextLimits.test.d.ts +0 -1
- package/ts_build/tests/clients/contextLimits.test.js +0 -69
- package/ts_build/tests/clients/contextLimits.test.js.map +0 -1
- package/ts_build/tests/clients/fireworks.test.d.ts +0 -1
- package/ts_build/tests/clients/fireworks.test.js +0 -65
- package/ts_build/tests/clients/fireworks.test.js.map +0 -1
- package/ts_build/tests/clients/openai.images.test.d.ts +0 -1
- package/ts_build/tests/clients/openai.images.test.js +0 -94
- package/ts_build/tests/clients/openai.images.test.js.map +0 -1
- package/ts_build/tests/clients/pricing.test.d.ts +0 -1
- package/ts_build/tests/clients/pricing.test.js +0 -124
- package/ts_build/tests/clients/pricing.test.js.map +0 -1
- package/ts_build/tests/clients/reasoningEffort.test.d.ts +0 -1
- package/ts_build/tests/clients/reasoningEffort.test.js +0 -116
- package/ts_build/tests/clients/reasoningEffort.test.js.map +0 -1
- package/ts_build/tests/compressor/bigstring.test.d.ts +0 -1
- package/ts_build/tests/compressor/bigstring.test.js +0 -275
- package/ts_build/tests/compressor/bigstring.test.js.map +0 -1
- package/ts_build/tests/compressor/toolResponseCache.test.d.ts +0 -1
- package/ts_build/tests/compressor/toolResponseCache.test.js +0 -250
- package/ts_build/tests/compressor/toolResponseCache.test.js.map +0 -1
- package/ts_build/tests/compressor/usageBase64.test.d.ts +0 -1
- package/ts_build/tests/compressor/usageBase64.test.js +0 -109
- package/ts_build/tests/compressor/usageBase64.test.js.map +0 -1
- package/ts_build/tests/manual/agent-events/run-test.d.ts +0 -2
- package/ts_build/tests/manual/agent-events/run-test.js +0 -148
- package/ts_build/tests/manual/agent-events/run-test.js.map +0 -1
- package/ts_build/tests/manual/browser-login/test_browser_login_basic.d.ts +0 -2
- package/ts_build/tests/manual/browser-login/test_browser_login_basic.js +0 -118
- package/ts_build/tests/manual/browser-login/test_browser_login_basic.js.map +0 -1
- package/ts_build/tests/manual/browser-login/test_cli_integration.d.ts +0 -2
- package/ts_build/tests/manual/browser-login/test_cli_integration.js +0 -163
- package/ts_build/tests/manual/browser-login/test_cli_integration.js.map +0 -1
- package/ts_build/tests/manual/browser-login/test_cross_platform_browser.d.ts +0 -2
- package/ts_build/tests/manual/browser-login/test_cross_platform_browser.js +0 -169
- package/ts_build/tests/manual/browser-login/test_cross_platform_browser.js.map +0 -1
- package/ts_build/tests/manual/browser-login/test_error_scenarios.d.ts +0 -2
- package/ts_build/tests/manual/browser-login/test_error_scenarios.js +0 -207
- package/ts_build/tests/manual/browser-login/test_error_scenarios.js.map +0 -1
- package/ts_build/tests/manual/clients/completions.test.d.ts +0 -1
- package/ts_build/tests/manual/clients/completions.test.js +0 -151
- package/ts_build/tests/manual/clients/completions.test.js.map +0 -1
- package/ts_build/tests/manual/file-edits/figma.test.d.ts +0 -0
- package/ts_build/tests/manual/file-edits/figma.test.js +0 -2
- package/ts_build/tests/manual/file-edits/figma.test.js.map +0 -1
- package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.d.ts +0 -1
- package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.js +0 -110
- package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.js.map +0 -1
- package/ts_build/tests/manual/file-edits/patching.test.d.ts +0 -1
- package/ts_build/tests/manual/file-edits/patching.test.js +0 -129
- package/ts_build/tests/manual/file-edits/patching.test.js.map +0 -1
- package/ts_build/tests/manual/modalities/google.modalities.test.d.ts +0 -1
- package/ts_build/tests/manual/modalities/google.modalities.test.js +0 -262
- package/ts_build/tests/manual/modalities/google.modalities.test.js.map +0 -1
- package/ts_build/tests/manual/modalities/openai.modalities.test.d.ts +0 -1
- package/ts_build/tests/manual/modalities/openai.modalities.test.js +0 -262
- package/ts_build/tests/manual/modalities/openai.modalities.test.js.map +0 -1
- package/ts_build/tests/manual/modalities/streaming.test.d.ts +0 -1
- package/ts_build/tests/manual/modalities/streaming.test.js +0 -216
- package/ts_build/tests/manual/modalities/streaming.test.js.map +0 -1
- package/ts_build/tests/manual/modalities/xai.modalities.test.d.ts +0 -1
- package/ts_build/tests/manual/modalities/xai.modalities.test.js +0 -219
- package/ts_build/tests/manual/modalities/xai.modalities.test.js.map +0 -1
- package/ts_build/tests/manual/test-concurrent-ask.d.ts +0 -1
- package/ts_build/tests/manual/test-concurrent-ask.js +0 -22
- package/ts_build/tests/manual/test-concurrent-ask.js.map +0 -1
- package/ts_build/tests/manual/ycmd/debug_diagnostics_test.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/debug_diagnostics_test.js +0 -124
- package/ts_build/tests/manual/ycmd/debug_diagnostics_test.js.map +0 -1
- package/ts_build/tests/manual/ycmd/minimal_advanced_test.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/minimal_advanced_test.js +0 -114
- package/ts_build/tests/manual/ycmd/minimal_advanced_test.js.map +0 -1
- package/ts_build/tests/manual/ycmd/simple_diagnostics_test.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/simple_diagnostics_test.js +0 -84
- package/ts_build/tests/manual/ycmd/simple_diagnostics_test.js.map +0 -1
- package/ts_build/tests/manual/ycmd/simple_test.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/simple_test.js +0 -92
- package/ts_build/tests/manual/ycmd/simple_test.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test-typescript-sample.d.ts +0 -14
- package/ts_build/tests/manual/ycmd/test-typescript-sample.js +0 -20
- package/ts_build/tests/manual/ycmd/test-typescript-sample.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_advanced_features.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_advanced_features.js +0 -306
- package/ts_build/tests/manual/ycmd/test_advanced_features.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_advanced_with_tools.d.ts +0 -3
- package/ts_build/tests/manual/ycmd/test_advanced_with_tools.js +0 -271
- package/ts_build/tests/manual/ycmd/test_advanced_with_tools.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.js +0 -196
- package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.js +0 -184
- package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_fix.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_diagnostics_fix.js +0 -116
- package/ts_build/tests/manual/ycmd/test_diagnostics_fix.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_simple.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_simple.js +0 -114
- package/ts_build/tests/manual/ycmd/test_diagnostics_simple.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_timing.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_diagnostics_timing.js +0 -129
- package/ts_build/tests/manual/ycmd/test_diagnostics_timing.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_discover_commands.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_discover_commands.js +0 -252
- package/ts_build/tests/manual/ycmd/test_discover_commands.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_endpoints.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_endpoints.js +0 -130
- package/ts_build/tests/manual/ycmd/test_endpoints.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_final_comprehensive.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_final_comprehensive.js +0 -231
- package/ts_build/tests/manual/ycmd/test_final_comprehensive.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_final_validation.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_final_validation.js +0 -170
- package/ts_build/tests/manual/ycmd/test_final_validation.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.js +0 -37
- package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_server_manager.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_server_manager.js +0 -38
- package/ts_build/tests/manual/ycmd/test_server_manager.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_simple_debug.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_simple_debug.js +0 -109
- package/ts_build/tests/manual/ycmd/test_simple_debug.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_tsserver_workflow.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_tsserver_workflow.js +0 -138
- package/ts_build/tests/manual/ycmd/test_tsserver_workflow.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_typescript_simple.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_typescript_simple.js +0 -76
- package/ts_build/tests/manual/ycmd/test_typescript_simple.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_typescript_ycmd.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_typescript_ycmd.js +0 -115
- package/ts_build/tests/manual/ycmd/test_typescript_ycmd.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_workspace_config.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_workspace_config.js +0 -99
- package/ts_build/tests/manual/ycmd/test_workspace_config.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.js +0 -140
- package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.d.ts +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.js +0 -93
- package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_direct.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_ycmd_direct.js +0 -159
- package/ts_build/tests/manual/ycmd/test_ycmd_direct.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_experiment.d.ts +0 -15
- package/ts_build/tests/manual/ycmd/test_ycmd_experiment.js +0 -68
- package/ts_build/tests/manual/ycmd/test_ycmd_experiment.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_final.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_ycmd_final.js +0 -205
- package/ts_build/tests/manual/ycmd/test_ycmd_final.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_integration.d.ts +0 -3
- package/ts_build/tests/manual/ycmd/test_ycmd_integration.js +0 -119
- package/ts_build/tests/manual/ycmd/test_ycmd_integration.js.map +0 -1
- package/ts_build/tests/manual/ycmd/test_ycmd_simple.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/test_ycmd_simple.js +0 -36
- package/ts_build/tests/manual/ycmd/test_ycmd_simple.js.map +0 -1
- package/ts_build/tests/manual/ycmd/working_simple_test.d.ts +0 -2
- package/ts_build/tests/manual/ycmd/working_simple_test.js +0 -144
- package/ts_build/tests/manual/ycmd/working_simple_test.js.map +0 -1
- package/ts_build/tests/patching/corrupted.test.d.ts +0 -1
- package/ts_build/tests/patching/corrupted.test.js +0 -53
- package/ts_build/tests/patching/corrupted.test.js.map +0 -1
- package/ts_build/tests/patching/imports.test.d.ts +0 -1
- package/ts_build/tests/patching/imports.test.js +0 -71
- package/ts_build/tests/patching/imports.test.js.map +0 -1
- package/ts_build/tests/patching/patchFileOutput.test.d.ts +0 -1
- package/ts_build/tests/patching/patchFileOutput.test.js +0 -269
- package/ts_build/tests/patching/patchFileOutput.test.js.map +0 -1
- package/ts_build/tests/patching/regression-2026.test.d.ts +0 -1
- package/ts_build/tests/patching/regression-2026.test.js +0 -528
- package/ts_build/tests/patching/regression-2026.test.js.map +0 -1
- package/ts_build/tests/patching/transcriptMangleRegression.test.d.ts +0 -1
- package/ts_build/tests/patching/transcriptMangleRegression.test.js +0 -104
- package/ts_build/tests/patching/transcriptMangleRegression.test.js.map +0 -1
- package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.d.ts +0 -1
- package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js +0 -294
- package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js.map +0 -1
- package/ts_build/tests/plugins/language/languagePlugin-integration.test.d.ts +0 -1
- package/ts_build/tests/plugins/language/languagePlugin-integration.test.js +0 -343
- package/ts_build/tests/plugins/language/languagePlugin-integration.test.js.map +0 -1
- package/ts_build/tests/plugins/language/languagePlugin.test.d.ts +0 -1
- package/ts_build/tests/plugins/language/languagePlugin.test.js +0 -315
- package/ts_build/tests/plugins/language/languagePlugin.test.js.map +0 -1
- package/ts_build/tests/processes/managedProcessShim.test.d.ts +0 -1
- package/ts_build/tests/processes/managedProcessShim.test.js +0 -92
- package/ts_build/tests/processes/managedProcessShim.test.js.map +0 -1
- package/ts_build/tests/processors/Base64ImageDetector.test.d.ts +0 -1
- package/ts_build/tests/processors/Base64ImageDetector.test.js +0 -792
- package/ts_build/tests/processors/Base64ImageDetector.test.js.map +0 -1
- package/ts_build/tests/processors/CustomVariables.test.d.ts +0 -1
- package/ts_build/tests/processors/CustomVariables.test.js +0 -764
- package/ts_build/tests/processors/CustomVariables.test.js.map +0 -1
- package/ts_build/tests/processors/CustomVariablesBenchmark.test.d.ts +0 -1
- package/ts_build/tests/processors/CustomVariablesBenchmark.test.js +0 -179
- package/ts_build/tests/processors/CustomVariablesBenchmark.test.js.map +0 -1
- package/ts_build/tests/processors/HarmonyToolProcessor.test.d.ts +0 -1
- package/ts_build/tests/processors/HarmonyToolProcessor.test.js +0 -382
- package/ts_build/tests/processors/HarmonyToolProcessor.test.js.map +0 -1
- package/ts_build/tests/processors/TokenCompressor.test.d.ts +0 -1
- package/ts_build/tests/processors/TokenCompressor.test.js +0 -473
- package/ts_build/tests/processors/TokenCompressor.test.js.map +0 -1
- package/ts_build/tests/processors/ToolResponseCache.test.d.ts +0 -1
- package/ts_build/tests/processors/ToolResponseCache.test.js +0 -657
- package/ts_build/tests/processors/ToolResponseCache.test.js.map +0 -1
- package/ts_build/tests/processors/tools/boundedRetrievalTools.test.d.ts +0 -1
- package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js +0 -57
- package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js.map +0 -1
- package/ts_build/tests/processors/tools/grepToolResponse.test.d.ts +0 -1
- package/ts_build/tests/processors/tools/grepToolResponse.test.js +0 -77
- package/ts_build/tests/processors/tools/grepToolResponse.test.js.map +0 -1
- package/ts_build/tests/services/ConversionService.test.d.ts +0 -1
- package/ts_build/tests/services/ConversionService.test.js +0 -154
- package/ts_build/tests/services/ConversionService.test.js.map +0 -1
- package/ts_build/tests/services/DockerService.test.d.ts +0 -1
- package/ts_build/tests/services/DockerService.test.js +0 -22
- package/ts_build/tests/services/DockerService.test.js.map +0 -1
- package/ts_build/tests/services/Tools.test.d.ts +0 -1
- package/ts_build/tests/services/Tools.test.js +0 -1365
- package/ts_build/tests/services/Tools.test.js.map +0 -1
- package/ts_build/tests/services/ToolsService.setFunction.test.d.ts +0 -1
- package/ts_build/tests/services/ToolsService.setFunction.test.js +0 -51
- package/ts_build/tests/services/ToolsService.setFunction.test.js.map +0 -1
- package/ts_build/tests/services/WorkerReloadConfig.test.d.ts +0 -1
- package/ts_build/tests/services/WorkerReloadConfig.test.js +0 -86
- package/ts_build/tests/services/WorkerReloadConfig.test.js.map +0 -1
- package/ts_build/tests/test.spec.d.ts +0 -1
- package/ts_build/tests/test.spec.js +0 -139
- package/ts_build/tests/test.spec.js.map +0 -1
- package/ts_build/tests/unit/InputQueueManager.test.d.ts +0 -1
- package/ts_build/tests/unit/InputQueueManager.test.js +0 -104
- package/ts_build/tests/unit/InputQueueManager.test.js.map +0 -1
- package/ts_build/tests/unit/McpWebsocketTransport.test.d.ts +0 -1
- package/ts_build/tests/unit/McpWebsocketTransport.test.js +0 -47
- package/ts_build/tests/unit/McpWebsocketTransport.test.js.map +0 -1
- package/ts_build/tests/unit/agents/historyRollback.test.d.ts +0 -1
- package/ts_build/tests/unit/agents/historyRollback.test.js +0 -42
- package/ts_build/tests/unit/agents/historyRollback.test.js.map +0 -1
- package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.d.ts +0 -1
- package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.js +0 -67
- package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.js.map +0 -1
- package/ts_build/tests/unit/auth/jwtStore.test.d.ts +0 -1
- package/ts_build/tests/unit/auth/jwtStore.test.js +0 -46
- package/ts_build/tests/unit/auth/jwtStore.test.js.map +0 -1
- package/ts_build/tests/unit/auth/keyAuth.test.d.ts +0 -1
- package/ts_build/tests/unit/auth/keyAuth.test.js +0 -118
- package/ts_build/tests/unit/auth/keyAuth.test.js.map +0 -1
- package/ts_build/tests/unit/auth/keyManager.test.d.ts +0 -1
- package/ts_build/tests/unit/auth/keyManager.test.js +0 -96
- package/ts_build/tests/unit/auth/keyManager.test.js.map +0 -1
- package/ts_build/tests/unit/auth/registerIdentity.test.d.ts +0 -1
- package/ts_build/tests/unit/auth/registerIdentity.test.js +0 -92
- package/ts_build/tests/unit/auth/registerIdentity.test.js.map +0 -1
- package/ts_build/tests/unit/chat/ToolCommandModule.test.d.ts +0 -1
- package/ts_build/tests/unit/chat/ToolCommandModule.test.js +0 -61
- package/ts_build/tests/unit/chat/ToolCommandModule.test.js.map +0 -1
- package/ts_build/tests/unit/chat/historyCommandArgs.test.d.ts +0 -1
- package/ts_build/tests/unit/chat/historyCommandArgs.test.js +0 -29
- package/ts_build/tests/unit/chat/historyCommandArgs.test.js.map +0 -1
- package/ts_build/tests/unit/clients/AIClient.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/AIClient.test.js +0 -342
- package/ts_build/tests/unit/clients/AIClient.test.js.map +0 -1
- package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.js +0 -77
- package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.js.map +0 -1
- package/ts_build/tests/unit/clients/attribution.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/attribution.test.js +0 -153
- package/ts_build/tests/unit/clients/attribution.test.js.map +0 -1
- package/ts_build/tests/unit/clients/http.responseMetadata.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/http.responseMetadata.test.js +0 -77
- package/ts_build/tests/unit/clients/http.responseMetadata.test.js.map +0 -1
- package/ts_build/tests/unit/clients/openai.responseMetadata.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/openai.responseMetadata.test.js +0 -86
- package/ts_build/tests/unit/clients/openai.responseMetadata.test.js.map +0 -1
- package/ts_build/tests/unit/clients/responseMetadata.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/responseMetadata.test.js +0 -96
- package/ts_build/tests/unit/clients/responseMetadata.test.js.map +0 -1
- package/ts_build/tests/unit/clients/withRetry.test.d.ts +0 -1
- package/ts_build/tests/unit/clients/withRetry.test.js +0 -225
- package/ts_build/tests/unit/clients/withRetry.test.js.map +0 -1
- package/ts_build/tests/unit/commands/agents.test.d.ts +0 -1
- package/ts_build/tests/unit/commands/agents.test.js +0 -119
- package/ts_build/tests/unit/commands/agents.test.js.map +0 -1
- package/ts_build/tests/unit/commands/github-credentials.test.d.ts +0 -1
- package/ts_build/tests/unit/commands/github-credentials.test.js +0 -145
- package/ts_build/tests/unit/commands/github-credentials.test.js.map +0 -1
- package/ts_build/tests/unit/commands/misc.test.d.ts +0 -1
- package/ts_build/tests/unit/commands/misc.test.js +0 -70
- package/ts_build/tests/unit/commands/misc.test.js.map +0 -1
- package/ts_build/tests/unit/commands/remote.test.d.ts +0 -1
- package/ts_build/tests/unit/commands/remote.test.js +0 -70
- package/ts_build/tests/unit/commands/remote.test.js.map +0 -1
- package/ts_build/tests/unit/commands/sandbox.test.d.ts +0 -1
- package/ts_build/tests/unit/commands/sandbox.test.js +0 -258
- package/ts_build/tests/unit/commands/sandbox.test.js.map +0 -1
- package/ts_build/tests/unit/hashes.test.d.ts +0 -1
- package/ts_build/tests/unit/hashes.test.js +0 -25
- package/ts_build/tests/unit/hashes.test.js.map +0 -1
- package/ts_build/tests/unit/input-queue.test.d.ts +0 -1
- package/ts_build/tests/unit/input-queue.test.js +0 -32
- package/ts_build/tests/unit/input-queue.test.js.map +0 -1
- package/ts_build/tests/unit/login.test.d.ts +0 -1
- package/ts_build/tests/unit/login.test.js +0 -166
- package/ts_build/tests/unit/login.test.js.map +0 -1
- package/ts_build/tests/unit/modules/moduleLoading.test.d.ts +0 -1
- package/ts_build/tests/unit/modules/moduleLoading.test.js +0 -272
- package/ts_build/tests/unit/modules/moduleLoading.test.js.map +0 -1
- package/ts_build/tests/unit/plugins/pluginLoading.test.d.ts +0 -1
- package/ts_build/tests/unit/plugins/pluginLoading.test.js +0 -117
- package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +0 -1
- package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.d.ts +0 -1
- package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js +0 -32
- package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js.map +0 -1
- package/ts_build/tests/unit/services/KnowhowClient.test.d.ts +0 -1
- package/ts_build/tests/unit/services/KnowhowClient.test.js +0 -69
- package/ts_build/tests/unit/services/KnowhowClient.test.js.map +0 -1
- package/ts_build/tests/unit/services/LazyToolsService.test.d.ts +0 -1
- package/ts_build/tests/unit/services/LazyToolsService.test.js +0 -47
- package/ts_build/tests/unit/services/LazyToolsService.test.js.map +0 -1
- package/ts_build/tests/unit/services/Mcp.test.d.ts +0 -1
- package/ts_build/tests/unit/services/Mcp.test.js +0 -45
- package/ts_build/tests/unit/services/Mcp.test.js.map +0 -1
- package/ts_build/tests/unit/services/MinimalToolsService.test.d.ts +0 -1
- package/ts_build/tests/unit/services/MinimalToolsService.test.js +0 -320
- package/ts_build/tests/unit/services/MinimalToolsService.test.js.map +0 -1
- package/ts_build/tests/unit/services/RuntimeReloadService.test.d.ts +0 -1
- package/ts_build/tests/unit/services/RuntimeReloadService.test.js +0 -26
- package/ts_build/tests/unit/services/RuntimeReloadService.test.js.map +0 -1
- package/ts_build/tests/unit/services/SessionManager.test.d.ts +0 -1
- package/ts_build/tests/unit/services/SessionManager.test.js +0 -72
- package/ts_build/tests/unit/services/SessionManager.test.js.map +0 -1
- package/ts_build/tests/unit/services/SyncedAgentWatcher.test.d.ts +0 -1
- package/ts_build/tests/unit/services/SyncedAgentWatcher.test.js +0 -78
- package/ts_build/tests/unit/services/SyncedAgentWatcher.test.js.map +0 -1
- package/ts_build/tests/unit/services/SyncerService.test.d.ts +0 -1
- package/ts_build/tests/unit/services/SyncerService.test.js +0 -40
- package/ts_build/tests/unit/services/SyncerService.test.js.map +0 -1
- package/ts_build/tests/unit/tunnel.test.d.ts +0 -1
- package/ts_build/tests/unit/tunnel.test.js +0 -47
- package/ts_build/tests/unit/tunnel.test.js.map +0 -1
- package/ts_build/tests/unit/util/Trace.test.d.ts +0 -1
- package/ts_build/tests/unit/util/Trace.test.js +0 -107
- package/ts_build/tests/unit/util/Trace.test.js.map +0 -1
- package/ts_build/tests/unit/utils/http.test.d.ts +0 -1
- package/ts_build/tests/unit/utils/http.test.js +0 -69
- package/ts_build/tests/unit/utils/http.test.js.map +0 -1
- package/tsconfig.json +0 -34
- package/tslint.json +0 -11
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
# Knowhow Quickstart
|
|
2
|
-
|
|
3
|
-
Knowhow is an AI CLI that uses plugins/tools, builds embeddings from your files, and lets you chat/ask using a configured project.
|
|
4
|
-
|
|
5
|
-
Website: https://knowhow.tyvm.ai
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 1) Installation
|
|
10
|
-
|
|
11
|
-
### Option A: Install globally
|
|
12
|
-
```bash
|
|
13
|
-
npm i -g @tyvm/knowhow
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
### Option B: Use with `npx` (no global install)
|
|
17
|
-
```bash
|
|
18
|
-
npx @tyvm/knowhow@latest knowhow --version
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
> After that, you can run commands as `knowhow ...` (or via `npx ... knowhow ...`).
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## 2) Initialize a project (`knowhow init`)
|
|
26
|
-
|
|
27
|
-
From your project folder, run:
|
|
28
|
-
```bash
|
|
29
|
-
knowhow init
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
This creates a local **Knowhow workspace** in `./.knowhow/` and also sets up global templates in `~/.knowhow/`.
|
|
33
|
-
|
|
34
|
-
### What it creates locally
|
|
35
|
-
|
|
36
|
-
In your current directory:
|
|
37
|
-
- `./.knowhow/`
|
|
38
|
-
- `knowhow.json` (your project configuration)
|
|
39
|
-
- `language.json`
|
|
40
|
-
- `prompts/` (prompt templates)
|
|
41
|
-
- `docs/` (generated docs output)
|
|
42
|
-
- `embeddings/` (generated embedding output)
|
|
43
|
-
- `.ignore`, `.hashes.json`, `.jwt` (runtime/support files)
|
|
44
|
-
|
|
45
|
-
You can edit `./.knowhow/knowhow.json` to customize sources, embeddings, plugins, agents, etc.
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## 3) Login (`knowhow login`)
|
|
50
|
-
|
|
51
|
-
Run:
|
|
52
|
-
```bash
|
|
53
|
-
knowhow login
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
### What login does
|
|
57
|
-
- Starts a **browser-based OAuth/login flow** (it creates a short-lived login session, opens your browser, waits until you approve).
|
|
58
|
-
- Retrieves a **JWT token** after approval.
|
|
59
|
-
- Stores the JWT at:
|
|
60
|
-
- `./.knowhow/.jwt` (permissions are set so only you can read it)
|
|
61
|
-
|
|
62
|
-
### If you already have a JWT
|
|
63
|
-
```bash
|
|
64
|
-
knowhow login --jwt
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
After authentication, Knowhow:
|
|
68
|
-
- Calls Knowhow’s API (`/api/users/me`) using your JWT
|
|
69
|
-
- Prints your current user + organization
|
|
70
|
-
- Saves `orgId` into `./.knowhow/knowhow.json`
|
|
71
|
-
- Ensures the `knowhow` model provider is enabled in your config
|
|
72
|
-
|
|
73
|
-
---
|
|
74
|
-
|
|
75
|
-
## 4) Basic first run
|
|
76
|
-
|
|
77
|
-
After `knowhow init` + `knowhow login`, you can start immediately.
|
|
78
|
-
|
|
79
|
-
### Recommended: build embeddings first
|
|
80
|
-
```bash
|
|
81
|
-
knowhow embed
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### Then chat
|
|
85
|
-
```bash
|
|
86
|
-
knowhow chat
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
You can ask questions about your indexed project content.
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## 5) Key concepts (quick overview)
|
|
94
|
-
|
|
95
|
-
### `knowhow.json` (project config)
|
|
96
|
-
Your main configuration file at `./.knowhow/knowhow.json`. It controls:
|
|
97
|
-
- enabled plugins
|
|
98
|
-
- what files to turn into docs/artifacts (**sources**)
|
|
99
|
-
- what files to embed for retrieval (**embedSources**)
|
|
100
|
-
- model providers and the worker/tunneling behavior
|
|
101
|
-
|
|
102
|
-
### Plugins
|
|
103
|
-
Plugins are “tools” Knowhow can use (for example: embeddings, git, agents, download, etc.).
|
|
104
|
-
They’re enabled/disabled via `config.plugins.enabled/disabled`.
|
|
105
|
-
|
|
106
|
-
### Sources
|
|
107
|
-
**Sources** describe generation tasks (input files → output file(s) + which prompt to use).
|
|
108
|
-
Example fields (names vary by config): `sources[].input`, `sources[].output`, `sources[].prompt`.
|
|
109
|
-
|
|
110
|
-
### Embeddings
|
|
111
|
-
**Embeddings** are vector indexes built from configured inputs (`embedSources`).
|
|
112
|
-
Running:
|
|
113
|
-
```bash
|
|
114
|
-
knowhow embed
|
|
115
|
-
```
|
|
116
|
-
creates embedding data under `./.knowhow/embeddings/` (based on your `embedSources`).
|
|
117
|
-
|
|
118
|
-
### Worker
|
|
119
|
-
A **worker** controls background execution features (for example, tunneling/remote execution support).
|
|
120
|
-
This lives under the `worker` section in `knowhow.json`.
|
|
121
|
-
|
|
122
|
-
---
|
|
123
|
-
|
|
124
|
-
## Links
|
|
125
|
-
- https://knowhow.tyvm.ai
|
|
126
|
-
- https://x.com/micahriggan
|
package/autodoc/skills-guide.md
DELETED
|
@@ -1,584 +0,0 @@
|
|
|
1
|
-
# Skills Guide (Knowhow CLI)
|
|
2
|
-
|
|
3
|
-
## 1) What skills are
|
|
4
|
-
|
|
5
|
-
**Skills** are reusable instruction bundles stored in files named **`SKILL.md`**.
|
|
6
|
-
When a user asks for something that matches a skill’s **name**, Knowhow automatically loads that skill’s full markdown content and provides it as context to the agent.
|
|
7
|
-
|
|
8
|
-
A skill file is ordinary markdown, but it includes **frontmatter metadata** at the top:
|
|
9
|
-
|
|
10
|
-
- `name` — the skill trigger name (must match what users say)
|
|
11
|
-
- `description` — a short summary shown during “skill discovery”
|
|
12
|
-
- **Body** — the complete instructions the agent should follow
|
|
13
|
-
|
|
14
|
-
**File naming rule:** the plugin scans for files literally named **`SKILL.md`** (case-sensitive on most systems).
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## 2) How skills work
|
|
19
|
-
|
|
20
|
-
### What the SkillsPlugin does
|
|
21
|
-
Knowhow’s **Skills Plugin** (`src/plugins/SkillsPlugin.ts`) performs three steps:
|
|
22
|
-
|
|
23
|
-
1. **Load config**
|
|
24
|
-
- Reads `.knowhow/knowhow.json` via `getConfig()`
|
|
25
|
-
- Looks for a `skills` array:
|
|
26
|
-
```json
|
|
27
|
-
{
|
|
28
|
-
"skills": ["some/directory", "..."]
|
|
29
|
-
}
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
2. **Scan skill directories**
|
|
33
|
-
- For each directory in `skills`, it:
|
|
34
|
-
- Expands `~` to `process.env.HOME`
|
|
35
|
-
- Recursively searches all subdirectories
|
|
36
|
-
- Finds files named `SKILL.md`
|
|
37
|
-
- Reads each file and extracts frontmatter `name` + `description`
|
|
38
|
-
- Each skill is indexed as:
|
|
39
|
-
- `name`
|
|
40
|
-
- `description`
|
|
41
|
-
- `filePath`
|
|
42
|
-
|
|
43
|
-
3. **Match user input to skills**
|
|
44
|
-
- If the user prompt contains a skill name **as a substring** (case-insensitive), e.g.:
|
|
45
|
-
- user: “Please do a **database migration**”
|
|
46
|
-
- skill name: “database migration”
|
|
47
|
-
- Then the plugin loads the **entire SKILL.md content** for every matched skill.
|
|
48
|
-
|
|
49
|
-
### What gets injected into the agent
|
|
50
|
-
For each matched skill, the plugin returns a block like:
|
|
51
|
-
|
|
52
|
-
```md
|
|
53
|
-
## Skill: <skill.name>
|
|
54
|
-
File: <skill.filePath>
|
|
55
|
-
|
|
56
|
-
<full SKILL.md content>
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
If multiple skills match, the plugin provides multiple blocks.
|
|
60
|
-
|
|
61
|
-
### Skill discovery behavior (no matches)
|
|
62
|
-
If **no** skill name is found in the user prompt, the plugin returns a **summary**:
|
|
63
|
-
|
|
64
|
-
- “Available skills:”
|
|
65
|
-
- Each skill listed as:
|
|
66
|
-
- `- <name> (<filePath>): <description>`
|
|
67
|
-
- Plus a reminder:
|
|
68
|
-
- “To use a skill, reference its name in your request and I will load the full instructions.”
|
|
69
|
-
|
|
70
|
-
So users can learn what skills exist by asking something that doesn’t match any skill name.
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## 3) `SKILL.md` format
|
|
75
|
-
|
|
76
|
-
A skill file must follow this structure:
|
|
77
|
-
|
|
78
|
-
```md
|
|
79
|
-
---
|
|
80
|
-
name: <skill name>
|
|
81
|
-
description: <short description>
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
<instructions and examples here>
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### Frontmatter rules (important)
|
|
88
|
-
From the plugin’s `parseFrontmatter()` implementation:
|
|
89
|
-
|
|
90
|
-
- It expects frontmatter to begin at the **start** of the file with:
|
|
91
|
-
- `---` then newline
|
|
92
|
-
- It captures content until the next `---`
|
|
93
|
-
- Each frontmatter line is parsed as:
|
|
94
|
-
- `key: <value>`
|
|
95
|
-
- If a value contains `:` characters, they are preserved because the parser:
|
|
96
|
-
- splits on the first `:`
|
|
97
|
-
- rejoins the rest
|
|
98
|
-
|
|
99
|
-
### Body content
|
|
100
|
-
Everything after the closing `---` is treated as the **full skill instructions** and gets injected into the agent context.
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## 4) Configuring skills
|
|
105
|
-
|
|
106
|
-
Add a `skills` array in your `knowhow.json`:
|
|
107
|
-
|
|
108
|
-
### Example: local project config
|
|
109
|
-
`.knowhow/knowhow.json`
|
|
110
|
-
```json
|
|
111
|
-
{
|
|
112
|
-
"skills": [
|
|
113
|
-
".knowhow/skills",
|
|
114
|
-
"skills"
|
|
115
|
-
]
|
|
116
|
-
}
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
**Notes**
|
|
120
|
-
- Directories are scanned **recursively**
|
|
121
|
-
- Every `SKILL.md` found contributes a skill
|
|
122
|
-
- Unreadable/missing directories are ignored
|
|
123
|
-
|
|
124
|
-
### Path shorthand
|
|
125
|
-
The plugin supports `~`:
|
|
126
|
-
- `~/some/path` → resolved using `process.env.HOME`
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## 5) Skill discovery
|
|
131
|
-
|
|
132
|
-
If a user’s request does **not** include any configured skill names (as substring matches), the agent will receive the plugin’s “Available skills” summary.
|
|
133
|
-
|
|
134
|
-
To get a skill loaded, the user must:
|
|
135
|
-
- mention the skill name **in the request text**
|
|
136
|
-
- in any casing (the match is case-insensitive)
|
|
137
|
-
|
|
138
|
-
**Tip:** choose `name` strings that users will naturally include verbatim (e.g., “code review”, “deploy”, “database migration”).
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## 6) Writing effective skills (best practices)
|
|
143
|
-
|
|
144
|
-
### A) Use a clear, human-friendly `name`
|
|
145
|
-
- Pick wording users are likely to type.
|
|
146
|
-
- Keep it consistent and not overly broad.
|
|
147
|
-
- Avoid punctuation-heavy names; they are harder to match reliably.
|
|
148
|
-
|
|
149
|
-
### B) Put the most important instructions early
|
|
150
|
-
Agents work better when:
|
|
151
|
-
- prerequisites and scope are near the top
|
|
152
|
-
- steps are structured and scannable
|
|
153
|
-
|
|
154
|
-
### C) Use step-by-step structure
|
|
155
|
-
Prefer numbered lists, short sections, and checklists.
|
|
156
|
-
|
|
157
|
-
### D) Include code examples and templates
|
|
158
|
-
If the skill involves commands, configs, queries, or scripts:
|
|
159
|
-
- provide copy/paste examples
|
|
160
|
-
- show placeholders clearly (e.g., `<SERVICE>`, `<ENV>`)
|
|
161
|
-
|
|
162
|
-
### E) Handle edge cases explicitly
|
|
163
|
-
Include a section like:
|
|
164
|
-
- “Edge cases / when to stop”
|
|
165
|
-
- “Common pitfalls”
|
|
166
|
-
- “If you lack access/inputs, ask these questions”
|
|
167
|
-
|
|
168
|
-
### F) Match the plugin’s matching behavior
|
|
169
|
-
Because the plugin triggers when:
|
|
170
|
-
- `userPrompt.toLowerCase().includes(skill.name.toLowerCase())`
|
|
171
|
-
|
|
172
|
-
…avoid names that require exact formatting users won’t reproduce.
|
|
173
|
-
|
|
174
|
-
**Example:** If you name a skill `DB migrate`, users may type `database migration` instead and won’t match. Prefer a common phrase.
|
|
175
|
-
|
|
176
|
-
---
|
|
177
|
-
|
|
178
|
-
## 7) Example skills (complete `SKILL.md` files)
|
|
179
|
-
|
|
180
|
-
Below are **complete** examples you can place in directories scanned by your `skills` config.
|
|
181
|
-
|
|
182
|
-
### Example A: `deploy` skill
|
|
183
|
-
|
|
184
|
-
**File:** `.knowhow/skills/deploy/SKILL.md` (path arbitrary; filename must be `SKILL.md`)
|
|
185
|
-
```md
|
|
186
|
-
---
|
|
187
|
-
name: deploy
|
|
188
|
-
description: Deploy an application safely using a repeatable, checklist-driven process (plan, validate, release, verify, rollback).
|
|
189
|
-
---
|
|
190
|
-
|
|
191
|
-
# Deploy Skill
|
|
192
|
-
|
|
193
|
-
Use this skill to guide a safe deployment for a typical web/service app. Adapt steps to your stack (Kubernetes, systemd, Heroku, Docker Compose, etc.).
|
|
194
|
-
|
|
195
|
-
## Inputs to request (if missing)
|
|
196
|
-
If the user did not provide these, ask:
|
|
197
|
-
1. Deployment target (e.g., `staging`, `production`, a specific environment name)
|
|
198
|
-
2. Release artifact (e.g., docker image tag, build number, commit SHA)
|
|
199
|
-
3. Deployment method/tooling (e.g., Helm, kubectl, Terraform, SSH scripts, GitHub Actions)
|
|
200
|
-
4. Any required approvals or maintenance windows
|
|
201
|
-
5. Current rollback strategy
|
|
202
|
-
|
|
203
|
-
## Step-by-step deployment process
|
|
204
|
-
|
|
205
|
-
### 1) Plan & confirm scope
|
|
206
|
-
- Identify what will change:
|
|
207
|
-
- code changes
|
|
208
|
-
- config changes
|
|
209
|
-
- infrastructure changes
|
|
210
|
-
- Confirm:
|
|
211
|
-
- target environment
|
|
212
|
-
- expected downtime (if any)
|
|
213
|
-
- dependencies (databases, queues, caches)
|
|
214
|
-
|
|
215
|
-
### 2) Pre-deploy validation
|
|
216
|
-
- Verify health of the current environment:
|
|
217
|
-
- uptime/error rates
|
|
218
|
-
- logs for obvious incidents
|
|
219
|
-
- Confirm required secrets/configs exist for the target environment.
|
|
220
|
-
- If migrations are involved, identify:
|
|
221
|
-
- migration ordering and whether they are backward-compatible
|
|
222
|
-
|
|
223
|
-
### 3) Choose a release strategy
|
|
224
|
-
Pick one:
|
|
225
|
-
- **Blue/Green** (preferred for minimal disruption)
|
|
226
|
-
- **Rolling** (common for Kubernetes/stateful services)
|
|
227
|
-
- **Canary** (gradual traffic shift)
|
|
228
|
-
- **Restart-based** (simpler but higher risk)
|
|
229
|
-
|
|
230
|
-
State which one you will use and why.
|
|
231
|
-
|
|
232
|
-
### 4) Execute deployment
|
|
233
|
-
Provide the exact commands/steps for the user’s stack.
|
|
234
|
-
|
|
235
|
-
#### Kubernetes/Helm template
|
|
236
|
-
```bash
|
|
237
|
-
# Example variables:
|
|
238
|
-
# RELEASE=<release-name>
|
|
239
|
-
# NAMESPACE=<namespace>
|
|
240
|
-
# CHART=<chart-dir-or-name>
|
|
241
|
-
# IMAGE_TAG=<tag>
|
|
242
|
-
|
|
243
|
-
helm upgrade --install "$RELEASE" "$CHART" \
|
|
244
|
-
--namespace "$NAMESPACE" \
|
|
245
|
-
--set image.tag="$IMAGE_TAG"
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
#### Docker Compose template
|
|
249
|
-
```bash
|
|
250
|
-
# Example:
|
|
251
|
-
# IMAGE_TAG=<tag>
|
|
252
|
-
export IMAGE_TAG="$IMAGE_TAG"
|
|
253
|
-
|
|
254
|
-
docker compose pull
|
|
255
|
-
docker compose up -d --no-deps
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
### 5) Post-deploy verification (must-do)
|
|
259
|
-
After the deploy completes:
|
|
260
|
-
- Check application health endpoints
|
|
261
|
-
- Confirm critical workflows:
|
|
262
|
-
- login/session
|
|
263
|
-
- primary read/write operations
|
|
264
|
-
- queue consumers / background jobs (if applicable)
|
|
265
|
-
- Monitor logs for errors for at least **10–15 minutes** (or the team’s standard)
|
|
266
|
-
|
|
267
|
-
### 6) Communicate & close out
|
|
268
|
-
Report:
|
|
269
|
-
- what changed
|
|
270
|
-
- verification results
|
|
271
|
-
- link(s) to release notes/build artifacts
|
|
272
|
-
- next steps (if any)
|
|
273
|
-
|
|
274
|
-
## Rollback plan (include before executing)
|
|
275
|
-
Before the deployment, define rollback triggers:
|
|
276
|
-
- error budget exceeded
|
|
277
|
-
- health checks failing
|
|
278
|
-
- latency spike
|
|
279
|
-
- incident detected
|
|
280
|
-
|
|
281
|
-
Provide concrete rollback actions, e.g.:
|
|
282
|
-
- Helm rollback to previous revision:
|
|
283
|
-
```bash
|
|
284
|
-
helm rollback "$RELEASE" <revision-number> --namespace "$NAMESPACE"
|
|
285
|
-
```
|
|
286
|
-
- Or redeploy prior image tag.
|
|
287
|
-
|
|
288
|
-
## Edge cases / stop conditions
|
|
289
|
-
- Stop and ask questions if:
|
|
290
|
-
- you don’t know the release artifact
|
|
291
|
-
- there are pending schema changes without a migration plan
|
|
292
|
-
- rollback strategy is unclear
|
|
293
|
-
- If migrations exist, consider ordering:
|
|
294
|
-
1) deploy backward-compatible code
|
|
295
|
-
2) apply migrations
|
|
296
|
-
3) deploy forward code
|
|
297
|
-
|
|
298
|
-
## Output format (what to respond with)
|
|
299
|
-
When executing, respond with:
|
|
300
|
-
1. Deployment plan summary
|
|
301
|
-
2. Exact steps/commands
|
|
302
|
-
3. Verification checklist
|
|
303
|
-
4. Rollback instructions and triggers
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
---
|
|
307
|
-
|
|
308
|
-
### Example B: `code review` skill
|
|
309
|
-
|
|
310
|
-
**File:** `.knowhow/skills/code-review/SKILL.md`
|
|
311
|
-
```md
|
|
312
|
-
---
|
|
313
|
-
name: code review
|
|
314
|
-
description: Perform a structured code review with a checklist, risk assessment, and actionable feedback.
|
|
315
|
-
---
|
|
316
|
-
|
|
317
|
-
# Code Review Skill
|
|
318
|
-
|
|
319
|
-
Use this skill to review a code change (PR/diff). Provide feedback that is:
|
|
320
|
-
- specific
|
|
321
|
-
- actionable
|
|
322
|
-
- prioritized by risk/impact
|
|
323
|
-
|
|
324
|
-
## Inputs to request (if missing)
|
|
325
|
-
Ask for:
|
|
326
|
-
1. Language/framework
|
|
327
|
-
2. Repo context (where relevant)
|
|
328
|
-
3. The diff/patch (or key files)
|
|
329
|
-
4. Purpose of change (bug fix? feature?)
|
|
330
|
-
5. Constraints (performance/security/compliance)
|
|
331
|
-
|
|
332
|
-
## Review workflow
|
|
333
|
-
|
|
334
|
-
### 1) High-level summary
|
|
335
|
-
- What does the change aim to do?
|
|
336
|
-
- What files/components are most impacted?
|
|
337
|
-
|
|
338
|
-
### 2) Checklist review (use this order)
|
|
339
|
-
|
|
340
|
-
#### Correctness
|
|
341
|
-
- Does the code match the intended behavior?
|
|
342
|
-
- Are there off-by-one / null / boundary cases?
|
|
343
|
-
- Are errors handled and surfaced appropriately?
|
|
344
|
-
|
|
345
|
-
#### Security
|
|
346
|
-
- Input validation and sanitization
|
|
347
|
-
- Authz/authn checks
|
|
348
|
-
- Secrets handling (no secrets in logs)
|
|
349
|
-
- Injection risks (SQL/command/template)
|
|
350
|
-
- CSRF/XSS risks (web)
|
|
351
|
-
|
|
352
|
-
#### Performance
|
|
353
|
-
- Hot paths and unnecessary allocations
|
|
354
|
-
- N+1 queries / repeated work
|
|
355
|
-
- Unbounded loops or expensive operations
|
|
356
|
-
|
|
357
|
-
#### Maintainability
|
|
358
|
-
- Naming clarity
|
|
359
|
-
- DRY vs duplication
|
|
360
|
-
- Testability (pure functions, seams for mocks)
|
|
361
|
-
- Code structure and separation of concerns
|
|
362
|
-
|
|
363
|
-
#### Observability
|
|
364
|
-
- Useful logs (without leaking sensitive data)
|
|
365
|
-
- Metrics/events where appropriate
|
|
366
|
-
- Error logs include sufficient context
|
|
367
|
-
|
|
368
|
-
#### Testing
|
|
369
|
-
- Unit tests for logic
|
|
370
|
-
- Integration tests for boundaries
|
|
371
|
-
- Regression tests for bug fixes
|
|
372
|
-
- Edge cases covered
|
|
373
|
-
|
|
374
|
-
### 3) Risk assessment (must include)
|
|
375
|
-
Create a short risk table:
|
|
376
|
-
|
|
377
|
-
| Area | Risk level (Low/Med/High) | Why | Suggestion |
|
|
378
|
-
|------|------------------------------|-----|------------|
|
|
379
|
-
|
|
380
|
-
### 4) Actionable feedback
|
|
381
|
-
For each issue:
|
|
382
|
-
- Explain why it’s a problem
|
|
383
|
-
- Provide a suggested change (or example)
|
|
384
|
-
- Label severity: **Must-fix / Should-fix / Nice-to-have**
|
|
385
|
-
|
|
386
|
-
### 5) Questions for the author (if needed)
|
|
387
|
-
Ask clarifying questions only when assumptions would otherwise be unsafe.
|
|
388
|
-
|
|
389
|
-
## Example response structure
|
|
390
|
-
Return your output using:
|
|
391
|
-
|
|
392
|
-
1. Summary
|
|
393
|
-
2. Review (grouped by Correctness/Security/Performance/etc.)
|
|
394
|
-
3. Risk table
|
|
395
|
-
4. Must-fix / Should-fix items (with suggestions)
|
|
396
|
-
5. Tests recommendations
|
|
397
|
-
6. Questions (if any)
|
|
398
|
-
|
|
399
|
-
## Edge cases / constraints
|
|
400
|
-
- If the diff is incomplete, ask for the missing portions instead of guessing.
|
|
401
|
-
- If you cannot assess security due to missing auth context, explicitly state that limitation and request needed info.
|
|
402
|
-
```
|
|
403
|
-
|
|
404
|
-
---
|
|
405
|
-
|
|
406
|
-
### Example C: `database migration` skill
|
|
407
|
-
|
|
408
|
-
**File:** `.knowhow/skills/database-migration/SKILL.md`
|
|
409
|
-
```md
|
|
410
|
-
---
|
|
411
|
-
name: database migration
|
|
412
|
-
description: Plan and execute database migrations with safety (backward compatibility, ordering, verification, rollback).
|
|
413
|
-
---
|
|
414
|
-
|
|
415
|
-
# Database Migration Skill
|
|
416
|
-
|
|
417
|
-
Use this skill to guide migrations for relational databases (Postgres/MySQL/etc.) with production-safety principles.
|
|
418
|
-
|
|
419
|
-
## Inputs to request (if missing)
|
|
420
|
-
Ask:
|
|
421
|
-
1. Database type/version (e.g., Postgres 14)
|
|
422
|
-
2. Migration type:
|
|
423
|
-
- schema change
|
|
424
|
-
- data backfill
|
|
425
|
-
- index changes
|
|
426
|
-
- constraints
|
|
427
|
-
3. Migration tool (e.g., Flyway, Liquibase, Alembic, Prisma Migrate, custom scripts)
|
|
428
|
-
4. Environment (staging vs production)
|
|
429
|
-
5. Constraints:
|
|
430
|
-
- availability requirements
|
|
431
|
-
- expected load window
|
|
432
|
-
- maximum acceptable migration duration
|
|
433
|
-
6. Whether the app code will be deployed concurrently
|
|
434
|
-
|
|
435
|
-
## Safety principles (follow in order)
|
|
436
|
-
1. **Backward compatible first**
|
|
437
|
-
2. Prefer **expand → migrate → contract**
|
|
438
|
-
3. Keep transactions short when possible
|
|
439
|
-
4. Avoid long locks (reindex/alter carefully)
|
|
440
|
-
5. Validate before/after with queries
|
|
441
|
-
|
|
442
|
-
## Migration plan template
|
|
443
|
-
|
|
444
|
-
### Step 1) Understand current state
|
|
445
|
-
- Identify current schema
|
|
446
|
-
- Identify dependencies:
|
|
447
|
-
- foreign keys
|
|
448
|
-
- views
|
|
449
|
-
- triggers
|
|
450
|
-
- application queries
|
|
451
|
-
|
|
452
|
-
### Step 2) Define the target
|
|
453
|
-
- What new columns/tables/indexes/constraints are desired?
|
|
454
|
-
- What data transformations are needed?
|
|
455
|
-
|
|
456
|
-
### Step 3) Plan expand/migrate/contract (example)
|
|
457
|
-
#### Expand (backward compatible)
|
|
458
|
-
- Add new nullable column(s)
|
|
459
|
-
- Add new tables
|
|
460
|
-
- Add indexes concurrently (if supported)
|
|
461
|
-
- Do **not** add NOT NULL or strict constraints yet
|
|
462
|
-
|
|
463
|
-
#### Migrate (populate data)
|
|
464
|
-
- Backfill in batches
|
|
465
|
-
- Ensure idempotency
|
|
466
|
-
- Rate limit if needed
|
|
467
|
-
|
|
468
|
-
#### Contract (enforce invariants)
|
|
469
|
-
- Set NOT NULL after backfill completion
|
|
470
|
-
- Add constraints
|
|
471
|
-
- Drop old columns only after code is updated and verified
|
|
472
|
-
|
|
473
|
-
### Step 4) Order of deployments
|
|
474
|
-
If app code changes too, use:
|
|
475
|
-
1. Deploy backward-compatible code
|
|
476
|
-
2. Run expand migration
|
|
477
|
-
3. Deploy code that writes new format (optional)
|
|
478
|
-
4. Run data backfill
|
|
479
|
-
5. Deploy forward code
|
|
480
|
-
6. Run contract migration
|
|
481
|
-
|
|
482
|
-
## Concrete examples
|
|
483
|
-
|
|
484
|
-
### Example: Backfill a new column in batches (SQL pseudocode)
|
|
485
|
-
```sql
|
|
486
|
-
-- Add column first (expand)
|
|
487
|
-
ALTER TABLE users ADD COLUMN display_name TEXT;
|
|
488
|
-
|
|
489
|
-
-- Backfill in batches (migrate)
|
|
490
|
-
-- Repeat until affected_rows = 0
|
|
491
|
-
UPDATE users
|
|
492
|
-
SET display_name = username
|
|
493
|
-
WHERE display_name IS NULL
|
|
494
|
-
LIMIT 10000;
|
|
495
|
-
```
|
|
496
|
-
|
|
497
|
-
> If your DB doesn’t support `LIMIT` on UPDATE, use a CTE or batch-selection strategy.
|
|
498
|
-
|
|
499
|
-
### Example: Index creation carefully (Postgres-style)
|
|
500
|
-
- Create index concurrently to reduce locking:
|
|
501
|
-
```sql
|
|
502
|
-
CREATE INDEX CONCURRENTLY users_display_name_idx
|
|
503
|
-
ON users (display_name);
|
|
504
|
-
```
|
|
505
|
-
|
|
506
|
-
## Verification checklist (before and after)
|
|
507
|
-
### Before
|
|
508
|
-
- Confirm migration has a dry run plan
|
|
509
|
-
- Confirm rollback method exists
|
|
510
|
-
- Record:
|
|
511
|
-
- row counts
|
|
512
|
-
- min/max timestamps
|
|
513
|
-
- key aggregates
|
|
514
|
-
|
|
515
|
-
### After
|
|
516
|
-
- Re-run invariants:
|
|
517
|
-
- null counts for new required columns
|
|
518
|
-
- foreign key validity checks
|
|
519
|
-
- Check application health
|
|
520
|
-
- Monitor errors/latency for the migration window
|
|
521
|
-
|
|
522
|
-
## Rollback strategy
|
|
523
|
-
Define one of:
|
|
524
|
-
- **Down migration** (if safe/possible)
|
|
525
|
-
- **Reverse via feature flag**
|
|
526
|
-
- **Recreate old schema** (last resort)
|
|
527
|
-
- **Data rollback** (restore from snapshot/backups)
|
|
528
|
-
|
|
529
|
-
State rollback triggers explicitly (e.g., health checks failing, lock contention too high).
|
|
530
|
-
|
|
531
|
-
## Edge cases
|
|
532
|
-
- If adding NOT NULL column without default to a large table:
|
|
533
|
-
- do it via expand/migrate/contract
|
|
534
|
-
- If updating huge datasets:
|
|
535
|
-
- batch and monitor impact
|
|
536
|
-
- If migrations aren’t idempotent:
|
|
537
|
-
- redesign to be re-runnable safely
|
|
538
|
-
```
|
|
539
|
-
|
|
540
|
-
---
|
|
541
|
-
|
|
542
|
-
## 8) Global skills
|
|
543
|
-
|
|
544
|
-
If you want skills to be available **across projects**, store them in:
|
|
545
|
-
|
|
546
|
-
**`~/.knowhow/skills/`**
|
|
547
|
-
|
|
548
|
-
Then include that directory in your `skills` configuration (either in global config or project config, depending on how your setup uses `knowhow.json`).
|
|
549
|
-
|
|
550
|
-
### Recommended structure
|
|
551
|
-
```text
|
|
552
|
-
~/.knowhow/skills/
|
|
553
|
-
deploy/
|
|
554
|
-
SKILL.md
|
|
555
|
-
code-review/
|
|
556
|
-
SKILL.md
|
|
557
|
-
database-migration/
|
|
558
|
-
SKILL.md
|
|
559
|
-
```
|
|
560
|
-
|
|
561
|
-
### Example `knowhow.json` (point to global + local)
|
|
562
|
-
```json
|
|
563
|
-
{
|
|
564
|
-
"skills": [
|
|
565
|
-
"~/.knowhow/skills",
|
|
566
|
-
".knowhow/skills"
|
|
567
|
-
]
|
|
568
|
-
}
|
|
569
|
-
```
|
|
570
|
-
|
|
571
|
-
---
|
|
572
|
-
|
|
573
|
-
## Quick checklist for creating a new skill
|
|
574
|
-
|
|
575
|
-
1. Create a folder (any name) and place a file named **`SKILL.md`**
|
|
576
|
-
2. Add frontmatter at the top:
|
|
577
|
-
- `name: ...`
|
|
578
|
-
- `description: ...`
|
|
579
|
-
3. Write clear, step-by-step instructions in the body
|
|
580
|
-
4. Include examples and edge cases
|
|
581
|
-
5. Add the directory to the `skills` array in `.knowhow/knowhow.json`
|
|
582
|
-
6. Test by prompting the agent using the exact skill name phrase (case-insensitive substring match)
|
|
583
|
-
|
|
584
|
-
If you want, tell me your workflow (tools/stack) and I can generate a tailored set of `SKILL.md` templates for your team.
|