cngkit 1.1.23 → 1.1.25

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.
Files changed (70) hide show
  1. package/README.md +9 -7
  2. package/dist/{chunk-AS7FIJWP.js → chunk-2Y5FMKFS.js} +3 -4
  3. package/dist/chunk-2Y5FMKFS.js.map +1 -0
  4. package/dist/{chunk-VMTXY4KQ.js → chunk-3VDQDFHG.js} +14 -6
  5. package/dist/chunk-3VDQDFHG.js.map +1 -0
  6. package/dist/{chunk-U725ZHCI.js → chunk-55IPOJ3R.js} +2 -2
  7. package/dist/{chunk-BXS4IKUA.js → chunk-DDQ5TITN.js} +91 -15
  8. package/dist/chunk-DDQ5TITN.js.map +1 -0
  9. package/dist/{chunk-BRFWVQI4.js → chunk-LC4CYVCT.js} +1 -1
  10. package/dist/chunk-LC4CYVCT.js.map +1 -0
  11. package/dist/{chunk-YALWTRIP.js → chunk-LNFZT3R3.js} +2 -2
  12. package/dist/{chunk-JNHW72SU.js → chunk-QCAHQE7Q.js} +14 -9
  13. package/dist/chunk-QCAHQE7Q.js.map +1 -0
  14. package/dist/{chunk-WIEYHKQA.js → chunk-TC6YIS5Z.js} +12 -15
  15. package/dist/chunk-TC6YIS5Z.js.map +1 -0
  16. package/dist/{chunk-67FUBMNB.js → chunk-X3UQB2CC.js} +2 -2
  17. package/dist/{chunk-67FUBMNB.js.map → chunk-X3UQB2CC.js.map} +1 -1
  18. package/dist/{chunk-GYRLVNJX.js → chunk-YIU6G2D3.js} +2 -2
  19. package/dist/{chunk-3BATDTKU.js → chunk-YPGDQ6P2.js} +2 -4
  20. package/dist/chunk-YPGDQ6P2.js.map +1 -0
  21. package/dist/cli.js +2 -2
  22. package/dist/cli.js.map +1 -1
  23. package/dist/commands/coderoom/index.js +3 -3
  24. package/dist/commands/coderoom/join.js +14 -5
  25. package/dist/commands/coderoom/join.js.map +1 -1
  26. package/dist/commands/coderoom/share.js +4 -4
  27. package/dist/commands/hookify/index.js +3 -3
  28. package/dist/commands/hookify/ingest.js +3 -3
  29. package/dist/commands/hooks/index.js +3 -3
  30. package/dist/commands/hooks/install.js +3 -3
  31. package/dist/commands/hooks/uninstall.js +3 -3
  32. package/dist/commands/index.js +3 -3
  33. package/dist/commands/knowledges/audiences.js +6 -6
  34. package/dist/commands/knowledges/cat.js +6 -6
  35. package/dist/commands/knowledges/files.js +6 -6
  36. package/dist/commands/knowledges/find.js +6 -6
  37. package/dist/commands/knowledges/find.js.map +1 -1
  38. package/dist/commands/knowledges/glob.js +5 -5
  39. package/dist/commands/knowledges/grep.js +5 -5
  40. package/dist/commands/knowledges/grep.js.map +1 -1
  41. package/dist/commands/knowledges/head.js +6 -6
  42. package/dist/commands/knowledges/index.js +3 -3
  43. package/dist/commands/knowledges/list.js +6 -6
  44. package/dist/commands/knowledges/ls.js +6 -6
  45. package/dist/commands/knowledges/ls.js.map +1 -1
  46. package/dist/commands/knowledges/read.js +5 -5
  47. package/dist/commands/knowledges/read.js.map +1 -1
  48. package/dist/commands/knowledges/realpath.js +3 -3
  49. package/dist/commands/knowledges/realpath.js.map +1 -1
  50. package/dist/commands/knowledges/search.js +6 -6
  51. package/dist/commands/knowledges/stat.js +6 -6
  52. package/dist/commands/knowledges/status.js +6 -6
  53. package/dist/commands/knowledges/tail.js +6 -6
  54. package/dist/commands/knowledges/tree.js +6 -6
  55. package/dist/commands/login.js +2 -2
  56. package/dist/commands/scrub.js +17 -14
  57. package/dist/commands/scrub.js.map +1 -1
  58. package/dist/commands/transcripts.js +37 -27
  59. package/dist/commands/transcripts.js.map +1 -1
  60. package/package.json +1 -1
  61. package/dist/chunk-3BATDTKU.js.map +0 -1
  62. package/dist/chunk-AS7FIJWP.js.map +0 -1
  63. package/dist/chunk-BRFWVQI4.js.map +0 -1
  64. package/dist/chunk-BXS4IKUA.js.map +0 -1
  65. package/dist/chunk-JNHW72SU.js.map +0 -1
  66. package/dist/chunk-VMTXY4KQ.js.map +0 -1
  67. package/dist/chunk-WIEYHKQA.js.map +0 -1
  68. /package/dist/{chunk-U725ZHCI.js.map → chunk-55IPOJ3R.js.map} +0 -0
  69. /package/dist/{chunk-YALWTRIP.js.map → chunk-LNFZT3R3.js.map} +0 -0
  70. /package/dist/{chunk-GYRLVNJX.js.map → chunk-YIU6G2D3.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/features/knowledges/knowledges-output.tsx"],"sourcesContent":["import type { CngApi } from \"@cng/client\";\nimport { Box, Text } from \"ink\";\n\nimport { singleLine } from \"../../shared/command-utils.js\";\nimport { formatCatalogPathForDisplay } from \"./knowledges-input.js\";\n\nexport function KnowCatalogSummary({ catalog }: { readonly catalog: CngApi.HarnessCatalogSummary }) {\n return (\n <Box flexDirection=\"column\">\n <Text>\n <Text bold>Catalog: </Text>\n {catalog.name}\n </Text>\n <Text>\n <Text bold>Files: </Text>\n {catalog.files}\n </Text>\n <Text>\n <Text bold>Blobs: </Text>\n {catalog.blobs}\n </Text>\n <Text>\n <Text bold>Database: </Text>\n {catalog.database.engine} ({catalog.database.binding})\n </Text>\n </Box>\n );\n}\n\nexport function KnowAudienceList({ audiences }: { readonly audiences: readonly CngApi.HarnessAudience[] }) {\n if (audiences.length === 0) {\n return <Text color=\"yellow\">No audiences available.</Text>;\n }\n\n return (\n <Box flexDirection=\"column\">\n {audiences.map((audience) => (\n <Box flexDirection=\"column\" key={audience.id} marginBottom={1}>\n <Text>\n <Text color=\"cyan\">{audience.id}</Text>\n <Text> - {audience.label}</Text>\n </Text>\n <Text dimColor>{singleLine(audience.help)}</Text>\n </Box>\n ))}\n </Box>\n );\n}\n\nexport function KnowSearchResults({\n results,\n}: {\n readonly results: readonly CngApi.HarnessSemanticSearchResult[];\n}) {\n return (\n <Box flexDirection=\"column\">\n {results.map((result, index) => (\n <Box flexDirection=\"column\" key={result.id} marginBottom={1}>\n <Text>\n <Text color=\"cyan\">{index + 1}. </Text>\n <Text bold>{result.title}</Text>\n <Text dimColor> ({result.topicName})</Text>\n </Text>\n <Text dimColor>\n score {result.score.toFixed(3)} | {formatCatalogPathForDisplay(result.path)}\n </Text>\n <Text>{singleLine(result.description || result.contentPreview)}</Text>\n </Box>\n ))}\n </Box>\n );\n}\n\nexport function KnowTopicList({ topics }: { readonly topics: readonly CngApi.HarnessTopicSummary[] }) {\n return (\n <Box flexDirection=\"column\">\n {topics.map((topic) => (\n <Box flexDirection=\"column\" key={topic.id} marginBottom={1}>\n <Text>\n <Text color=\"cyan\">{topic.name}</Text>\n <Text dimColor> [{topic.type}]</Text>\n </Text>\n <Text>\n {topic.title} | files {topic.fileCount} | rating {topic.rating}\n </Text>\n <Text dimColor>{singleLine(topic.description)}</Text>\n </Box>\n ))}\n </Box>\n );\n}\n\nexport function KnowTopicFileList({ files }: { readonly files: readonly CngApi.HarnessTopicAsset[] }) {\n return (\n <Box flexDirection=\"column\">\n {files.map((file) => {\n const title = file.display_title ?? file.title ?? file.topic_name ?? \"Untitled\";\n\n return (\n <Box flexDirection=\"column\" key={`${file.path}-${file.sha256}`} marginBottom={1}>\n <Text color=\"cyan\">{formatCatalogPathForDisplay(file.path)}</Text>\n <Text dimColor>{title}</Text>\n </Box>\n );\n })}\n </Box>\n );\n}\n"],"mappings":";;;;;;;;AACA,SAAS,KAAK,YAAY;AAQpB,SACE,KADF;AAHC,SAAS,mBAAmB,EAAE,QAAQ,GAAuD;AAClG,SACE,qBAAC,OAAI,eAAc,UACjB;AAAA,yBAAC,QACC;AAAA,0BAAC,QAAK,MAAI,MAAC,uBAAS;AAAA,MACnB,QAAQ;AAAA,OACX;AAAA,IACA,qBAAC,QACC;AAAA,0BAAC,QAAK,MAAI,MAAC,qBAAO;AAAA,MACjB,QAAQ;AAAA,OACX;AAAA,IACA,qBAAC,QACC;AAAA,0BAAC,QAAK,MAAI,MAAC,qBAAO;AAAA,MACjB,QAAQ;AAAA,OACX;AAAA,IACA,qBAAC,QACC;AAAA,0BAAC,QAAK,MAAI,MAAC,wBAAU;AAAA,MACpB,QAAQ,SAAS;AAAA,MAAO;AAAA,MAAG,QAAQ,SAAS;AAAA,MAAQ;AAAA,OACvD;AAAA,KACF;AAEJ;AAEO,SAAS,iBAAiB,EAAE,UAAU,GAA8D;AACzG,MAAI,UAAU,WAAW,GAAG;AAC1B,WAAO,oBAAC,QAAK,OAAM,UAAS,qCAAuB;AAAA,EACrD;AAEA,SACE,oBAAC,OAAI,eAAc,UAChB,oBAAU,IAAI,CAAC,aACd,qBAAC,OAAI,eAAc,UAA2B,cAAc,GAC1D;AAAA,yBAAC,QACC;AAAA,0BAAC,QAAK,OAAM,QAAQ,mBAAS,IAAG;AAAA,MAChC,qBAAC,QAAK;AAAA;AAAA,QAAI,SAAS;AAAA,SAAM;AAAA,OAC3B;AAAA,IACA,oBAAC,QAAK,UAAQ,MAAE,qBAAW,SAAS,IAAI,GAAE;AAAA,OALX,SAAS,EAM1C,CACD,GACH;AAEJ;AAEO,SAAS,kBAAkB;AAAA,EAChC;AACF,GAEG;AACD,SACE,oBAAC,OAAI,eAAc,UAChB,kBAAQ,IAAI,CAAC,QAAQ,UACpB,qBAAC,OAAI,eAAc,UAAyB,cAAc,GACxD;AAAA,yBAAC,QACC;AAAA,2BAAC,QAAK,OAAM,QAAQ;AAAA,gBAAQ;AAAA,QAAE;AAAA,SAAE;AAAA,MAChC,oBAAC,QAAK,MAAI,MAAE,iBAAO,OAAM;AAAA,MACzB,qBAAC,QAAK,UAAQ,MAAC;AAAA;AAAA,QAAG,OAAO;AAAA,QAAU;AAAA,SAAC;AAAA,OACtC;AAAA,IACA,qBAAC,QAAK,UAAQ,MAAC;AAAA;AAAA,MACN,OAAO,MAAM,QAAQ,CAAC;AAAA,MAAE;AAAA,MAAI,4BAA4B,OAAO,IAAI;AAAA,OAC5E;AAAA,IACA,oBAAC,QAAM,qBAAW,OAAO,eAAe,OAAO,cAAc,GAAE;AAAA,OAThC,OAAO,EAUxC,CACD,GACH;AAEJ;AAEO,SAAS,cAAc,EAAE,OAAO,GAA+D;AACpG,SACE,oBAAC,OAAI,eAAc,UAChB,iBAAO,IAAI,CAAC,UACX,qBAAC,OAAI,eAAc,UAAwB,cAAc,GACvD;AAAA,yBAAC,QACC;AAAA,0BAAC,QAAK,OAAM,QAAQ,gBAAM,MAAK;AAAA,MAC/B,qBAAC,QAAK,UAAQ,MAAC;AAAA;AAAA,QAAG,MAAM;AAAA,QAAK;AAAA,SAAC;AAAA,OAChC;AAAA,IACA,qBAAC,QACE;AAAA,YAAM;AAAA,MAAM;AAAA,MAAU,MAAM;AAAA,MAAU;AAAA,MAAW,MAAM;AAAA,OAC1D;AAAA,IACA,oBAAC,QAAK,UAAQ,MAAE,qBAAW,MAAM,WAAW,GAAE;AAAA,OARf,MAAM,EASvC,CACD,GACH;AAEJ;AAEO,SAAS,kBAAkB,EAAE,MAAM,GAA4D;AACpG,SACE,oBAAC,OAAI,eAAc,UAChB,gBAAM,IAAI,CAAC,SAAS;AACnB,UAAM,QAAQ,KAAK,iBAAiB,KAAK,SAAS,KAAK,cAAc;AAErE,WACE,qBAAC,OAAI,eAAc,UAA6C,cAAc,GAC5E;AAAA,0BAAC,QAAK,OAAM,QAAQ,sCAA4B,KAAK,IAAI,GAAE;AAAA,MAC3D,oBAAC,QAAK,UAAQ,MAAE,iBAAM;AAAA,SAFS,GAAG,KAAK,IAAI,IAAI,KAAK,MAAM,EAG5D;AAAA,EAEJ,CAAC,GACH;AAEJ;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cli/command-runner.tsx","../src/shared/output/factory.ts","../src/shared/output/markdown.ts","../src/shared/output/renderer.tsx","../src/shared/theme.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport { useApp } from \"ink\";\n\nimport {\n CommandOutputMessages,\n createCommandOutput,\n formatError,\n type CommandOutput,\n type CommandOutputMessage,\n type CommandOutputMessagePayload,\n} from \"../shared/output/index.js\";\n\ntype CommandRunnerProps = {\n readonly run: (output: CommandOutput) => Promise<void>;\n};\n\nexport function CommandRunner({ run }: CommandRunnerProps) {\n const { exit } = useApp();\n const nextMessageIdRef = useRef(1);\n const [messages, setMessages] = useState<CommandOutputMessage[]>([]);\n const appendMessage = useCallback((message: CommandOutputMessagePayload) => {\n const nextMessage: CommandOutputMessage = {\n ...message,\n id: nextMessageIdRef.current,\n };\n nextMessageIdRef.current += 1;\n setMessages((currentMessages) => [...currentMessages, nextMessage]);\n }, []);\n\n useEffect(() => {\n const output = createCommandOutput({\n appendMessage,\n stdout: process.stdout,\n stderr: process.stderr,\n });\n\n void run(output)\n .catch((error: unknown) => {\n process.exitCode = 1;\n output.error(formatError(error));\n })\n .finally(() => {\n setTimeout(() => exit(), 0);\n });\n }, [appendMessage, exit, run]);\n\n return <CommandOutputMessages messages={messages} />;\n}\n","import process from \"node:process\";\n\nimport { resolveOutputFormat } from \"../config.js\";\nimport { prepareMarkdownForTerminal } from \"./markdown.js\";\nimport type {\n CommandOutput,\n CommandOutputSink,\n OutputStream,\n} from \"./types.js\";\n\nexport function createCommandOutput(sink: CommandOutputSink): CommandOutput {\n const stdout = sink.stdout ?? process.stdout;\n const stderr = sink.stderr ?? process.stderr;\n\n return {\n info(message) {\n appendStyledMessage(sink, stdout, \"stdout\", \"info\", message);\n },\n success(message) {\n appendStyledMessage(sink, stdout, \"stdout\", \"success\", message);\n },\n warning(message) {\n appendStyledMessage(sink, stdout, \"stdout\", \"warning\", message);\n },\n muted(message) {\n appendStyledMessage(sink, stdout, \"stdout\", \"muted\", message);\n },\n markdown(message) {\n if (resolveOutputFormat() === \"markdown\") {\n stdout.write(`${message}\\n`);\n return;\n }\n\n if (sink.appendMessage) {\n sink.appendMessage({ kind: \"markdown\", message: prepareMarkdownForTerminal(message) });\n return;\n }\n\n stdout.write(`${message}\\n`);\n },\n component(element) {\n if (sink.appendMessage) {\n sink.appendMessage({ kind: \"component\", element });\n return;\n }\n\n stdout.write(\"\\n\");\n },\n raw(message) {\n stdout.write(`${message}\\n`);\n },\n error(message) {\n appendStyledMessage(sink, stderr, \"stderr\", \"error\", message);\n },\n };\n}\n\nfunction appendStyledMessage(\n sink: CommandOutputSink,\n stream: OutputStream,\n streamName: \"stdout\" | \"stderr\",\n style: \"info\" | \"success\" | \"warning\" | \"muted\" | \"error\",\n message: string\n): void {\n if (sink.appendMessage) {\n sink.appendMessage({ kind: \"styled\", stream: streamName, style, message });\n return;\n }\n\n stream.write(`${message}\\n`);\n}\n","export function prepareMarkdownForTerminal(markdown: string): string {\n if (!markdown.startsWith(\"---\\n\")) {\n return markdown;\n }\n\n const frontmatterEndIndex = markdown.indexOf(\"\\n---\", 4);\n if (frontmatterEndIndex < 0) {\n return formatFrontmatterForTerminal(markdown.slice(4).trimEnd());\n }\n\n const frontmatter = markdown.slice(4, frontmatterEndIndex).trimEnd();\n const body = markdown.slice(frontmatterEndIndex + \"\\n---\".length).replace(/^\\n+/, \"\");\n\n return `${formatFrontmatterForTerminal(frontmatter)}\\n\\n${body}`;\n}\n\nexport function formatFrontmatterForTerminal(frontmatter: string): string {\n return `## Metadata\\n\\n\\`\\`\\`yaml\\n${frontmatter}\\n\\`\\`\\``;\n}\n","import process from \"node:process\";\nimport { createElement, useEffect, type ReactElement } from \"react\";\nimport { Static, Text, useStderr, useStdout } from \"ink\";\nimport Markdown from \"@inkkit/ink-markdown\";\n\nimport { createMarkdownTheme, statusStylePropsByOutputStyle } from \"../theme.js\";\nimport type { CommandOutputMessage, OutputStream } from \"./types.js\";\n\nexport function CommandOutputMessages({\n messages,\n}: {\n readonly messages: readonly CommandOutputMessage[];\n}): ReactElement | null {\n const { stdout } = useStdout();\n const width = clampMarkdownWidth(stdout.columns);\n const useColor = shouldRenderColor(stdout);\n\n if (messages.length === 0) {\n return null;\n }\n\n return createElement(\n Static<CommandOutputMessage>,\n {\n items: [...messages],\n style: { flexDirection: \"column\" },\n children: (message: CommandOutputMessage) =>\n createElement(CommandOutputMessageView, {\n key: message.id,\n message,\n useColor,\n width,\n }),\n }\n );\n}\n\nfunction CommandOutputMessageView({\n message,\n useColor,\n width,\n}: {\n readonly message: CommandOutputMessage;\n readonly useColor: boolean;\n readonly width: number;\n}): ReactElement {\n if (message.kind === \"styled\") {\n if (message.stream === \"stderr\") {\n return createElement(StderrLine, { message: message.message });\n }\n\n return createElement(\n Text,\n {\n ...statusStylePropsByOutputStyle[message.style],\n wrap: \"wrap\",\n },\n message.message\n );\n }\n\n if (message.kind === \"markdown\") {\n return createElement(\n Markdown,\n {\n ...createMarkdownTheme(useColor),\n width,\n },\n message.message\n );\n }\n\n return message.element;\n}\n\nfunction StderrLine({ message }: { readonly message: string }): null {\n const { write } = useStderr();\n\n useEffect(() => {\n write(`${message}\\n`);\n }, [message, write]);\n\n return null;\n}\n\nfunction shouldRenderColor(stream: OutputStream): boolean {\n if (process.env.CNGKIT_NO_COLOR === \"1\") {\n return false;\n }\n\n const colorMode = process.env.CNGKIT_COLOR?.toLowerCase();\n\n if (colorMode === \"never\" || colorMode === \"0\" || colorMode === \"false\") {\n return false;\n }\n\n if (colorMode === \"always\" || colorMode === \"1\" || colorMode === \"true\") {\n return true;\n }\n\n if (process.env.FORCE_COLOR !== undefined && process.env.FORCE_COLOR !== \"0\") {\n return true;\n }\n\n if (process.env.NO_COLOR !== undefined) {\n return false;\n }\n\n return stream.isTTY === true;\n}\n\nfunction clampMarkdownWidth(columns: number | undefined): number {\n if (columns === undefined) {\n return 100;\n }\n\n return Math.max(72, Math.min(columns, 120));\n}\n","import { Chalk } from \"chalk\";\nimport type { TextProps } from \"ink\";\n\nexport type OutputStyle = \"info\" | \"success\" | \"warning\" | \"muted\" | \"error\";\n\nexport const statusStylePropsByOutputStyle = {\n info: {\n color: \"cyan\",\n },\n success: {\n color: \"green\",\n bold: true,\n },\n warning: {\n color: \"yellow\",\n bold: true,\n },\n muted: {\n dimColor: true,\n },\n error: {\n color: \"red\",\n bold: true,\n },\n} satisfies Record<OutputStyle, TextProps>;\n\nexport function createMarkdownTheme(useColor: boolean) {\n const chalk = new Chalk({ level: useColor ? 1 : 0 });\n const identity = (value: string) => value;\n\n return {\n code: chalk.green,\n blockquote: chalk.dim.italic,\n html: chalk.gray,\n heading: chalk.blueBright.bold,\n firstHeading: chalk.magentaBright.bold,\n hr: chalk.gray,\n listitem: identity,\n table: identity,\n paragraph: identity,\n strong: chalk.bold,\n em: chalk.italic,\n codespan: chalk.cyanBright,\n del: chalk.dim.strikethrough,\n link: chalk.blueBright,\n href: chalk.blue.underline,\n text: identity,\n showSectionPrefix: false,\n reflowText: true,\n unescape: true,\n emoji: false,\n tab: 2,\n };\n}\n"],"mappings":"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","names":["useEffect","process","process","process","process","useEffect"]}