@azrico/azcli 1.2.1 → 1.2.3

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 (89) hide show
  1. package/package.json +1 -1
  2. package/dist/cli/create-cli.js +0 -40
  3. package/dist/cli/create-cli.js.map +0 -1
  4. package/dist/cli/index.js +0 -20
  5. package/dist/cli/index.js.map +0 -1
  6. package/dist/cli/options.js +0 -17
  7. package/dist/cli/options.js.map +0 -1
  8. package/dist/core/files.js +0 -82
  9. package/dist/core/files.js.map +0 -1
  10. package/dist/core/json.js +0 -16
  11. package/dist/core/json.js.map +0 -1
  12. package/dist/core/logger.js +0 -26
  13. package/dist/core/logger.js.map +0 -1
  14. package/dist/core/process.js +0 -120
  15. package/dist/core/process.js.map +0 -1
  16. package/dist/core/project-type.js +0 -41
  17. package/dist/core/project-type.js.map +0 -1
  18. package/dist/core/strings.js +0 -20
  19. package/dist/core/strings.js.map +0 -1
  20. package/dist/features/build/build.js +0 -46
  21. package/dist/features/build/build.js.map +0 -1
  22. package/dist/features/build/command.js +0 -17
  23. package/dist/features/build/command.js.map +0 -1
  24. package/dist/features/build/wordpress.js +0 -135
  25. package/dist/features/build/wordpress.js.map +0 -1
  26. package/dist/features/clean/clean.js +0 -27
  27. package/dist/features/clean/clean.js.map +0 -1
  28. package/dist/features/clean/command.js +0 -13
  29. package/dist/features/clean/command.js.map +0 -1
  30. package/dist/features/optimize-transcripts/agent-runner.js +0 -40
  31. package/dist/features/optimize-transcripts/agent-runner.js.map +0 -1
  32. package/dist/features/optimize-transcripts/command.js +0 -24
  33. package/dist/features/optimize-transcripts/command.js.map +0 -1
  34. package/dist/features/optimize-transcripts/optimize.js +0 -72
  35. package/dist/features/optimize-transcripts/optimize.js.map +0 -1
  36. package/dist/features/optimize-transcripts/prompts.js +0 -39
  37. package/dist/features/optimize-transcripts/prompts.js.map +0 -1
  38. package/dist/features/optimize-transcripts/redact.js +0 -57
  39. package/dist/features/optimize-transcripts/redact.js.map +0 -1
  40. package/dist/features/optimize-transcripts/secret-remover.js +0 -85
  41. package/dist/features/optimize-transcripts/secret-remover.js.map +0 -1
  42. package/dist/features/package/command.js +0 -13
  43. package/dist/features/package/command.js.map +0 -1
  44. package/dist/features/package/packager.js +0 -132
  45. package/dist/features/package/packager.js.map +0 -1
  46. package/dist/features/publish/command.js +0 -13
  47. package/dist/features/publish/command.js.map +0 -1
  48. package/dist/features/publish/publish.js +0 -29
  49. package/dist/features/publish/publish.js.map +0 -1
  50. package/dist/features/transcripts/command.js +0 -27
  51. package/dist/features/transcripts/command.js.map +0 -1
  52. package/dist/features/transcripts/extract.js +0 -148
  53. package/dist/features/transcripts/extract.js.map +0 -1
  54. package/dist/features/transcripts/jsonl.js +0 -100
  55. package/dist/features/transcripts/jsonl.js.map +0 -1
  56. package/dist/features/transcripts/options.js +0 -53
  57. package/dist/features/transcripts/options.js.map +0 -1
  58. package/dist/features/transcripts/render-markdown.js +0 -105
  59. package/dist/features/transcripts/render-markdown.js.map +0 -1
  60. package/dist/features/transcripts/sources/claude.js +0 -150
  61. package/dist/features/transcripts/sources/claude.js.map +0 -1
  62. package/dist/features/transcripts/sources/codex.js +0 -171
  63. package/dist/features/transcripts/sources/codex.js.map +0 -1
  64. package/dist/features/transcripts/types.js +0 -5
  65. package/dist/features/transcripts/types.js.map +0 -1
  66. package/dist/features/update/command.js +0 -16
  67. package/dist/features/update/command.js.map +0 -1
  68. package/dist/features/update/composer.js +0 -35
  69. package/dist/features/update/composer.js.map +0 -1
  70. package/dist/features/update/filter-options.js +0 -23
  71. package/dist/features/update/filter-options.js.map +0 -1
  72. package/dist/features/update/update.js +0 -28
  73. package/dist/features/update/update.js.map +0 -1
  74. package/dist/features/update/yarn.js +0 -30
  75. package/dist/features/update/yarn.js.map +0 -1
  76. package/dist/features/verify-changes/changed-files.js +0 -36
  77. package/dist/features/verify-changes/changed-files.js.map +0 -1
  78. package/dist/features/verify-changes/command.js +0 -25
  79. package/dist/features/verify-changes/command.js.map +0 -1
  80. package/dist/features/verify-changes/config.js +0 -59
  81. package/dist/features/verify-changes/config.js.map +0 -1
  82. package/dist/features/verify-changes/report.js +0 -30
  83. package/dist/features/verify-changes/report.js.map +0 -1
  84. package/dist/features/verify-changes/select.js +0 -39
  85. package/dist/features/verify-changes/select.js.map +0 -1
  86. package/dist/features/verify-changes/verify.js +0 -54
  87. package/dist/features/verify-changes/verify.js.map +0 -1
  88. package/dist/features/yarn/commands.js +0 -18
  89. package/dist/features/yarn/commands.js.map +0 -1
@@ -1,132 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.packageProject = exports.publish = exports.finalize = exports.prepare = exports.getDistPath = void 0;
7
- const node_fs_1 = __importDefault(require("node:fs"));
8
- const node_path_1 = __importDefault(require("node:path"));
9
- const files_1 = require("../../core/files");
10
- const logger_1 = require("../../core/logger");
11
- const process_1 = require("../../core/process");
12
- const strings_1 = require("../../core/strings");
13
- const json_1 = require("../../core/json");
14
- const dependencyKeys = ['dependencies', 'peerDependencies'];
15
- function readManifest(file, defaults = {}) {
16
- const value = JSON.parse(node_fs_1.default.readFileSync(file, 'utf8'));
17
- if (!(0, json_1.isRecord)(value))
18
- throw new Error(`Expected a package object in ${file}`);
19
- const manifest = { ...defaults, ...value };
20
- if (typeof manifest.name !== 'string' || typeof manifest.version !== 'string')
21
- throw new Error(`Expected a package name and version in ${file}`);
22
- return { ...manifest, name: manifest.name, version: manifest.version };
23
- }
24
- function dependencies(value) {
25
- if (value === undefined)
26
- return {};
27
- if (!(0, json_1.isRecord)(value) || Object.values(value).some((version) => typeof version !== 'string'))
28
- throw new Error('Package dependencies must map names to version strings.');
29
- return value;
30
- }
31
- function baseName(manifest) {
32
- return (0, strings_1.customTrim)(manifest.name.replaceAll('workspace', ''), '.', ' ', '/');
33
- }
34
- function packageDirectories(cwd, includeCore = false) {
35
- return node_fs_1.default.readdirSync(node_path_1.default.join(cwd, 'packages'), { withFileTypes: true })
36
- .filter((entry) => entry.isDirectory() && (includeCore || entry.name !== 'core') && !/^[_.]/.test(entry.name))
37
- .map((entry) => ({ folder: entry.name, directory: node_path_1.default.join(cwd, 'packages', entry.name) }));
38
- }
39
- function packageData(cwd, base) {
40
- return packageDirectories(cwd).map((entry) => {
41
- const manifest = readManifest(node_path_1.default.join(entry.directory, 'package.json'), { name: entry.folder, version: base.version });
42
- const name = manifest.name.split('/').pop()?.split('.').pop() || entry.folder;
43
- return { ...entry, manifest, name: baseName(base) + '.' + name };
44
- });
45
- }
46
- function writeManifest(file, manifest) {
47
- node_fs_1.default.mkdirSync(node_path_1.default.dirname(file), { recursive: true });
48
- node_fs_1.default.writeFileSync(file, JSON.stringify(manifest, null, 2) + '\n');
49
- }
50
- function getDistPath(cwd) {
51
- for (const folder of ['dist', 'build', 'temp']) {
52
- const directory = node_path_1.default.join(cwd, folder);
53
- if (node_fs_1.default.existsSync(directory) && node_fs_1.default.statSync(directory).isDirectory())
54
- return directory;
55
- }
56
- throw new Error('No dist/build found. Build your files first.');
57
- }
58
- exports.getDistPath = getDistPath;
59
- function prepare(cwd) {
60
- const base = readManifest(node_path_1.default.join(cwd, 'package.json'));
61
- const packages = packageData(cwd, base);
62
- const directory = node_path_1.default.join(cwd, 'packages', 'core');
63
- const manifest = { ...base, name: baseName(base), private: false, main: './index', homepage: '.' };
64
- for (const key of ['scripts', 'source', 'workspaces', 'files', 'devDependencies'])
65
- delete manifest[key];
66
- for (const key of dependencyKeys)
67
- manifest[key] = Object.fromEntries(packages.map((pkg) => [pkg.name, 'workspace:^']));
68
- (0, files_1.removeIfExists)(directory);
69
- writeManifest(node_path_1.default.join(directory, 'package.json'), manifest);
70
- node_fs_1.default.writeFileSync(node_path_1.default.join(directory, 'index.ts'), packages.map((pkg) => `export * from ${JSON.stringify(pkg.name)};`).join('\n'));
71
- }
72
- exports.prepare = prepare;
73
- async function finalize(cwd, run = process_1.runCommand, quiet = false) {
74
- const base = readManifest(node_path_1.default.join(cwd, 'package.json'));
75
- const dist = getDistPath(cwd);
76
- const packages = packageData(cwd, base);
77
- const core = readManifest(node_path_1.default.join(cwd, 'packages', 'core', 'package.json'));
78
- node_fs_1.default.cpSync(node_path_1.default.join(cwd, 'packages'), node_path_1.default.join(dist, 'packages'), {
79
- recursive: true,
80
- filter: (entry) => !node_path_1.default.basename(entry).startsWith('.') &&
81
- (node_fs_1.default.lstatSync(entry).isDirectory() || node_path_1.default.basename(entry) === 'package.json'),
82
- });
83
- core.version = base.version;
84
- for (const key of dependencyKeys)
85
- core[key] = Object.fromEntries(packages.map((pkg) => [pkg.name, base.version]));
86
- writeManifest(node_path_1.default.join(dist, 'packages', 'core', 'package.json'), core);
87
- for (const pkg of packages) {
88
- const manifest = { ...pkg.manifest, name: pkg.name, version: base.version, description: 'module of ' + pkg.name, private: false };
89
- delete manifest.scripts;
90
- for (const key of dependencyKeys) {
91
- const deps = { ...dependencies(manifest[key]), ...dependencies(base[key]) };
92
- manifest[key] = Object.fromEntries(Object.entries(deps).map(([name, version]) => [name, version.startsWith('workspace') ? base.version : version]));
93
- }
94
- const directory = node_path_1.default.join(dist, 'packages', pkg.folder);
95
- writeManifest(node_path_1.default.join(directory, 'package.json'), manifest);
96
- await run('npm', ['pkg', 'fix'], { cwd: directory, quiet });
97
- }
98
- }
99
- exports.finalize = finalize;
100
- async function publish(cwd, run = process_1.runCommand, quiet = false) {
101
- const dist = getDistPath(cwd);
102
- for (const pkg of packageDirectories(cwd, true)) {
103
- const directory = node_path_1.default.join(dist, 'packages', pkg.folder);
104
- readManifest(node_path_1.default.join(directory, 'package.json'));
105
- await run('npm', ['publish', '--access', 'public', '--tag', 'latest'], { cwd: directory, quiet });
106
- }
107
- }
108
- exports.publish = publish;
109
- async function packageProject(options, run = process_1.runCommand) {
110
- const cwd = node_path_1.default.resolve(options.path ?? process.cwd());
111
- switch (options.mode) {
112
- case 'prepare':
113
- prepare(cwd);
114
- break;
115
- case 'finalize':
116
- await finalize(cwd, run, options.quiet);
117
- break;
118
- case 'publish':
119
- await publish(cwd, run, options.quiet);
120
- break;
121
- case 'go':
122
- prepare(cwd);
123
- await run('yarn', ['run', 'build'], { cwd, quiet: options.quiet });
124
- await finalize(cwd, run, options.quiet);
125
- await publish(cwd, run, options.quiet);
126
- break;
127
- }
128
- if (!options.quiet)
129
- (0, logger_1.showMessage)(`Package ${options.mode} done`, 'text');
130
- }
131
- exports.packageProject = packageProject;
132
- //# sourceMappingURL=packager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"packager.js","sourceRoot":"","sources":["../../../src/features/package/packager.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const options_1 = require("../../cli/options");
4
- const project_type_1 = require("../../core/project-type");
5
- const publish_1 = require("./publish");
6
- const command = {
7
- command: 'publish',
8
- describe: 'Publish the current package',
9
- builder: (cli) => cli.options(options_1.projectOptions),
10
- handler: async (args) => { await (0, publish_1.publishProject)((0, project_type_1.loadProjectType)(args), args); },
11
- };
12
- exports.default = command;
13
- //# sourceMappingURL=command.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/features/publish/command.ts"],"names":[],"mappings":";;AACA,+CAAmD;AACnD,0DAA0E;AAC1E,uCAA2C;AAE3C,MAAM,OAAO,GAAsC;IAClD,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,6BAA6B;IACvC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,wBAAc,CAAC;IAC7C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,IAAA,wBAAc,EAAC,IAAA,8BAAe,EAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;CAC/E,CAAC;AACF,kBAAe,OAAO,CAAC"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.publishProject = void 0;
7
- const node_path_1 = __importDefault(require("node:path"));
8
- const process_1 = require("../../core/process");
9
- const logger_1 = require("../../core/logger");
10
- const build_1 = require("../build/build");
11
- async function publishProject(type, options = {}, run = process_1.runCommand) {
12
- const cwd = node_path_1.default.resolve(options.path ?? process.cwd());
13
- const execution = { cwd, quiet: options.quiet };
14
- if (type === 'yarn') {
15
- await run('yarn', ['run', 'build'], execution);
16
- await run('npm', ['publish', '--access', 'public', '--tag', 'latest'], execution);
17
- }
18
- else if (type === 'python') {
19
- const files = (0, build_1.distributionFiles)(cwd);
20
- await run('python', ['-m', 'pip', 'install', '--upgrade', 'twine'], execution);
21
- await run('python', ['-m', 'twine', 'upload', ...files], execution);
22
- }
23
- else
24
- throw new Error(`Publishing is not supported for ${type} projects.`);
25
- if (!options.quiet)
26
- (0, logger_1.showMessage)('Publish done', 'text');
27
- }
28
- exports.publishProject = publishProject;
29
- //# sourceMappingURL=publish.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/features/publish/publish.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,gDAA+D;AAE/D,8CAAgD;AAChD,0CAAmD;AAE5C,KAAK,UAAU,cAAc,CAAC,IAAiB,EAAE,UAA0B,EAAE,EAAE,MAAqB,oBAAU;IACpH,MAAM,GAAG,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IAChD,IAAI,IAAI,KAAK,MAAM,EAAE;QACpB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;KAClF;SAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;QAC7B,MAAM,KAAK,GAAG,IAAA,yBAAiB,EAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/E,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;KACpE;;QAAM,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,YAAY,CAAC,CAAC;IAC5E,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,IAAA,oBAAW,EAAC,cAAc,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAZD,wCAYC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateFilters = void 0;
4
- const extract_1 = require("./extract");
5
- const options_1 = require("./options");
6
- const types_1 = require("./types");
7
- function validateFilters(options) {
8
- for (const [name, value] of [['since-days', options.sinceDays], ['last', options.last]]) {
9
- if (value !== undefined && (!Number.isFinite(value) || value < 0 || (name === 'last' && !Number.isInteger(value))))
10
- throw new Error(`--${name} must be a nonnegative ${name === 'last' ? 'integer' : 'number'}.`);
11
- }
12
- return true;
13
- }
14
- exports.validateFilters = validateFilters;
15
- const command = {
16
- command: 'transcripts <source>',
17
- describe: 'Extract AI session transcripts as Markdown',
18
- builder: (cli) => cli
19
- .positional('source', { type: 'string', choices: types_1.sourceNames, demandOption: true })
20
- .options(options_1.transcript_filter_options)
21
- .option('list', { type: 'boolean', describe: 'List projects without writing files' })
22
- .option('out', { type: 'string', describe: 'Output directory' })
23
- .check((args) => validateFilters({ sinceDays: args['since-days'], last: args.last })),
24
- handler: async (args) => { await (0, extract_1.extractTranscripts)(extract_1.transcript_sources[args.source], args); },
25
- };
26
- exports.default = command;
27
- //# sourceMappingURL=command.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/features/transcripts/command.ts"],"names":[],"mappings":";;;AACA,uCAAmE;AACnE,uCAAsD;AACtD,mCAAkE;AAGlE,SAAgB,eAAe,CAAC,OAAuB;IACtD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAU,EAAE;QACjG,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YACjH,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,0BAA0B,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;KAC/F;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAND,0CAMC;AAED,MAAM,OAAO,GAAyC;IACrD,OAAO,EAAE,sBAAsB;IAC/B,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG;SACnB,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,mBAAW,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SAClF,OAAO,CAAC,mCAAyB,CAAC;SAClC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,qCAAqC,EAAE,CAAC;SACpF,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;SAC/D,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,IAAA,4BAAkB,EAAC,4BAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;CAC7F,CAAC;AACF,kBAAe,OAAO,CAAC"}
@@ -1,148 +0,0 @@
1
- "use strict";
2
- /* Collects session stats and writes session transcripts (Claude Code, Codex) as Markdown files */
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.extractTranscripts = exports.collectSession = exports.sessionFiles = exports.transcript_sources = void 0;
8
- const chalk_1 = __importDefault(require("chalk"));
9
- const node_fs_1 = __importDefault(require("node:fs"));
10
- const node_path_1 = __importDefault(require("node:path"));
11
- const logger_1 = require("../../core/logger");
12
- const files_1 = require("../../core/files");
13
- const claude_1 = require("./sources/claude");
14
- const codex_1 = require("./sources/codex");
15
- const options_1 = require("./options");
16
- const render_markdown_1 = require("./render-markdown");
17
- const jsonl_1 = require("./jsonl");
18
- exports.transcript_sources = {
19
- claude: claude_1.claude_source,
20
- codex: codex_1.codex_source,
21
- };
22
- /* -------------------------------------------------------------------------- */
23
- /* Sessions */
24
- /* -------------------------------------------------------------------------- */
25
- function sessionFiles(session, opts) {
26
- return opts.includeSubagents ? [session.file, ...session.subFiles] : [session.file];
27
- }
28
- exports.sessionFiles = sessionFiles;
29
- async function collectSession(source, session, files) {
30
- const info = {
31
- sessionId: session.sessionId,
32
- file: '',
33
- cwd: '',
34
- gitBranch: '',
35
- summary: '',
36
- started: '',
37
- ended: '',
38
- records: 0,
39
- userMessages: 0,
40
- toolUsage: {},
41
- };
42
- let titleRank = -1;
43
- let first = Infinity;
44
- let last = -Infinity;
45
- for (const entries of (0, jsonl_1.sessionEntries)(source, files)) {
46
- for await (const e of entries) {
47
- info.records++;
48
- if (!info.cwd && e.cwd)
49
- info.cwd = e.cwd;
50
- if (!info.gitBranch && e.gitBranch)
51
- info.gitBranch = e.gitBranch;
52
- if (e.title && e.title.rank >= titleRank)
53
- [titleRank, info.summary] = [e.title.rank, e.title.text];
54
- const t = Date.parse(e.timestamp ?? '');
55
- if (!isNaN(t)) {
56
- if (t < first)
57
- [first, info.started] = [t, e.timestamp];
58
- if (t > last)
59
- [last, info.ended] = [t, e.timestamp];
60
- }
61
- for (const p of e.parts) {
62
- if (p.kind === 'user' && !e.sidechain)
63
- info.userMessages++;
64
- if (p.kind === 'tool_call' && p.toolName)
65
- info.toolUsage[p.toolName] = (info.toolUsage[p.toolName] ?? 0) + 1;
66
- }
67
- }
68
- }
69
- if (session.title)
70
- info.summary = session.title;
71
- info.toolUsage = Object.fromEntries(Object.entries(info.toolUsage).sort((a, b) => b[1] - a[1]));
72
- return info;
73
- }
74
- exports.collectSession = collectSession;
75
- /* -------------------------------------------------------------------------- */
76
- /* Extract */
77
- /* -------------------------------------------------------------------------- */
78
- /**
79
- * List the projects of a source and write one Markdown file per session plus index.json.
80
- * args: out, project, sinceDays, last, list, userOnly, includeTools, includeThinking, includeSubagents
81
- */
82
- async function extractTranscripts(source, args) {
83
- if (!node_fs_1.default.existsSync(source.root))
84
- throw new Error(`${source.name} data folder not found: ${source.root}`);
85
- const initialBadLines = jsonl_1.read_stats.badLines;
86
- const outDir = node_path_1.default.resolve(args.out || node_path_1.default.join(options_1.default_out_root, source.name));
87
- const needles = (args.project ?? []).map((p) => p.toLowerCase());
88
- const sinceMs = Number(args.sinceDays) > 0 ? Date.now() - Number(args.sinceDays) * 86400000 : 0;
89
- const opts = {
90
- userOnly: !!args.userOnly,
91
- includeTools: args.includeTools ?? true,
92
- includeThinking: args.includeThinking ?? true,
93
- includeSubagents: !!args.includeSubagents,
94
- };
95
- const projects = (await source.listProjects())
96
- .filter(({ folder, cwd }) => {
97
- const haystack = [folder.toLowerCase(), cwd.toLowerCase()];
98
- return needles.length === 0 || needles.some((n) => haystack.some((h) => h.includes(n)));
99
- })
100
- .map((p) => ({ ...p, sessions: p.sessions.filter((s) => s.mtime >= sinceMs) }))
101
- .sort((a, b) => a.folder.localeCompare(b.folder));
102
- /* --last n: the n most recently modified sessions across all matched projects */
103
- if (Number(args.last) > 0) {
104
- const keep = new Set(projects
105
- .flatMap((p) => p.sessions)
106
- .sort((a, b) => b.mtime - a.mtime)
107
- .slice(0, Number(args.last)));
108
- for (const p of projects)
109
- p.sessions = p.sessions.filter((s) => keep.has(s));
110
- }
111
- const index = [];
112
- let totalProjects = 0;
113
- let totalSessions = 0;
114
- for (const { folder, cwd, sessions } of projects) {
115
- if (sessions.length === 0)
116
- continue;
117
- totalProjects++;
118
- totalSessions += sessions.length;
119
- if (!args.quiet)
120
- (0, logger_1.showMessage)([chalk_1.default.cyan(folder), chalk_1.default.yellow(`${sessions.length} sessions`), chalk_1.default.gray(cwd || '-')]);
121
- if (args.list)
122
- continue;
123
- const project = { folder, cwd, sessions: [] };
124
- node_fs_1.default.mkdirSync((0, files_1.resolveInside)(outDir, folder), { recursive: true });
125
- for (const s of sessions) {
126
- const files = sessionFiles(s, opts);
127
- const info = await collectSession(source, s, files);
128
- info.file = `${folder}/${s.sessionId}.md`;
129
- await (0, render_markdown_1.writeSession)((0, files_1.resolveInside)(outDir, info.file), source, files, info, opts);
130
- project.sessions.push(info);
131
- }
132
- project.sessions.sort((a, b) => a.started.localeCompare(b.started));
133
- index.push(project);
134
- }
135
- const badLines = jsonl_1.read_stats.badLines - initialBadLines;
136
- const skipped = badLines > 0 ? `, ${badLines} malformed lines skipped` : '';
137
- if (!args.list) {
138
- node_fs_1.default.mkdirSync(outDir, { recursive: true });
139
- node_fs_1.default.writeFileSync(node_path_1.default.join(outDir, 'index.json'), JSON.stringify(index, null, 2));
140
- }
141
- if (!args.quiet)
142
- (0, logger_1.showMessage)(chalk_1.default.green(`total: ${totalProjects} projects, ${totalSessions} sessions${skipped}`));
143
- if (!args.quiet && !args.list)
144
- (0, logger_1.showMessage)(chalk_1.default.gray('output: ' + outDir));
145
- return { outDir, index };
146
- }
147
- exports.extractTranscripts = extractTranscripts;
148
- //# sourceMappingURL=extract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../src/features/transcripts/extract.ts"],"names":[],"mappings":"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"}
@@ -1,100 +0,0 @@
1
- "use strict";
2
- /* Shared types and readers for AI tool session transcripts (Claude Code, Codex) */
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.sessionEntries = exports.blocksText = exports.folderFromCwd = exports.mergeByTime = exports.readJsonl = exports.read_stats = void 0;
8
- const node_fs_1 = __importDefault(require("node:fs"));
9
- const node_readline_1 = __importDefault(require("node:readline"));
10
- const json_1 = require("../../core/json");
11
- /** Counts lines that could not be parsed, across all reads */
12
- exports.read_stats = { badLines: 0 };
13
- /**
14
- * Stream records of a JSONL file one line at a time, skipping malformed lines
15
- */
16
- async function* readJsonl(file) {
17
- const input = node_fs_1.default.createReadStream(file, { encoding: 'utf8' });
18
- const rl = node_readline_1.default.createInterface({ input, crlfDelay: Infinity });
19
- try {
20
- for await (const line of rl) {
21
- if (!line.trim())
22
- continue;
23
- let rec;
24
- try {
25
- rec = JSON.parse(line);
26
- }
27
- catch {
28
- exports.read_stats.badLines++;
29
- continue;
30
- }
31
- if ((0, json_1.isRecord)(rec))
32
- yield rec;
33
- else
34
- exports.read_stats.badLines++;
35
- }
36
- }
37
- finally {
38
- rl.close();
39
- input.destroy();
40
- }
41
- }
42
- exports.readJsonl = readJsonl;
43
- function entryTime(e) {
44
- const t = Date.parse(e.timestamp ?? '');
45
- return isNaN(t) ? -Infinity : t;
46
- }
47
- /**
48
- * Merge several entry streams into one, ordered by timestamp.
49
- * Entries without a timestamp are passed through as soon as they are read.
50
- */
51
- async function* mergeByTime(sources) {
52
- try {
53
- const heads = await Promise.all(sources.map((s) => s.next()));
54
- while (true) {
55
- let best = -1;
56
- for (let i = 0; i < heads.length; i++) {
57
- const h = heads[i];
58
- if (h.done)
59
- continue;
60
- if (best < 0 || entryTime(h.value) < entryTime(heads[best].value))
61
- best = i;
62
- }
63
- if (best < 0)
64
- return;
65
- yield heads[best].value;
66
- heads[best] = await sources[best].next();
67
- }
68
- }
69
- finally {
70
- await Promise.all(sources.map((source) => source.return(undefined)));
71
- }
72
- }
73
- exports.mergeByTime = mergeByTime;
74
- /**
75
- * Same folder naming Claude Code uses for ~/.claude/projects.
76
- * The Windows drive letter is lowercased so c:\x and C:\x end up in one folder.
77
- */
78
- function folderFromCwd(cwd) {
79
- return cwd.replace(/^[A-Z]:/, (d) => d.toLowerCase()).replace(/[^a-zA-Z0-9]/g, '-');
80
- }
81
- exports.folderFromCwd = folderFromCwd;
82
- /** Tool output that is a string or an array of content blocks */
83
- function blocksText(content) {
84
- if (typeof content === 'string')
85
- return content;
86
- if (!Array.isArray(content))
87
- return content == null ? '' : JSON.stringify(content, null, 2);
88
- return content
89
- .map((value) => {
90
- const b = (0, json_1.asRecord)(value);
91
- return typeof b.text === 'string' ? b.text : `[${b.type ?? 'unknown'}]`;
92
- })
93
- .join('\n');
94
- }
95
- exports.blocksText = blocksText;
96
- function sessionEntries(source, files) {
97
- return files.map((file, i) => source.readEntries(file, i > 0));
98
- }
99
- exports.sessionEntries = sessionEntries;
100
- //# sourceMappingURL=jsonl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonl.js","sourceRoot":"","sources":["../../../src/features/transcripts/jsonl.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- /* Constants of the transcripts and optimize-transcripts commands */
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.transcript_filter_options = exports.max_tool_chars = exports.default_out_root = void 0;
8
- const node_os_1 = __importDefault(require("node:os"));
9
- const node_path_1 = __importDefault(require("node:path"));
10
- /** Outside any repo, so extracted transcripts are never committed by accident */
11
- exports.default_out_root = node_path_1.default.join(node_os_1.default.homedir(), 'ai-transcripts');
12
- /** Tool calls and results longer than this are cut in transcripts */
13
- exports.max_tool_chars = 2000;
14
- /* -------------------------------------------------------------------------- */
15
- /* Options */
16
- /* -------------------------------------------------------------------------- */
17
- /** Options shared by the transcripts and optimize-transcripts commands */
18
- exports.transcript_filter_options = {
19
- project: {
20
- describe: 'only projects whose folder or cwd contains this text (repeatable)',
21
- type: 'string',
22
- array: true,
23
- },
24
- 'since-days': {
25
- describe: 'only session files modified in the last n days, 0 for all',
26
- type: 'number',
27
- default: 7,
28
- },
29
- last: {
30
- describe: 'only the n most recently modified sessions across the matched projects',
31
- type: 'number',
32
- },
33
- 'user-only': {
34
- describe: "only the human's text messages",
35
- type: 'boolean',
36
- },
37
- 'include-tools': {
38
- describe: 'include tool calls and results (cut to 2000 chars), --no-include-tools to leave out',
39
- type: 'boolean',
40
- default: true,
41
- },
42
- 'include-thinking': {
43
- describe: 'include thinking blocks as quotes, --no-include-thinking to leave out',
44
- type: 'boolean',
45
- default: true,
46
- },
47
- 'include-subagents': {
48
- describe: 'include subagent (sidechain) messages',
49
- type: 'boolean',
50
- default: false,
51
- },
52
- };
53
- //# sourceMappingURL=options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/features/transcripts/options.ts"],"names":[],"mappings":";AAAA,oEAAoE;;;;;;AAEpE,sDAAyB;AACzB,0DAA6B;AAG7B,iFAAiF;AACpE,QAAA,gBAAgB,GAAG,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAC1E,qEAAqE;AACxD,QAAA,cAAc,GAAG,IAAI,CAAC;AAEnC,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAChF,0EAA0E;AAC7D,QAAA,yBAAyB,GAAG;IACxC,OAAO,EAAE;QACR,QAAQ,EAAE,mEAAmE;QAC7E,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACX;IACD,YAAY,EAAE;QACb,QAAQ,EAAE,2DAA2D;QACrE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;KACV;IACD,IAAI,EAAE;QACL,QAAQ,EAAE,wEAAwE;QAClF,IAAI,EAAE,QAAQ;KACd;IACD,WAAW,EAAE;QACZ,QAAQ,EAAE,gCAAgC;QAC1C,IAAI,EAAE,SAAS;KACf;IACD,eAAe,EAAE;QAChB,QAAQ,EAAE,qFAAqF;QAC/F,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;KACb;IACD,kBAAkB,EAAE;QACnB,QAAQ,EAAE,uEAAuE;QACjF,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;KACb;IACD,mBAAmB,EAAE;QACpB,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;KACd;CACiC,CAAC"}