@git.zone/tsdoc 1.10.2 → 1.11.0

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.
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@git.zone/tsdoc',
6
- version: '1.10.0',
6
+ version: '1.11.0',
7
7
  description: 'A comprehensive TypeScript documentation tool that leverages AI to generate and enhance project documentation, including dynamic README creation, API docs via TypeDoc, and smart commit message generation.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxpQkFBaUI7SUFDdkIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLDhNQUE4TTtDQUM1TixDQUFBIn0=
@@ -99,8 +99,28 @@ export class Commit {
99
99
  console.log(`⚠️ Warning: Context size (${contextResult.tokenCount} tokens) is close to or exceeds model limit (${MODEL_TOKEN_LIMIT} tokens).`);
100
100
  console.log(`The model may not be able to process all information effectively.`);
101
101
  }
102
- let result = await this.aiDocsRef.openaiInstance.chat({
103
- systemMessage: `
102
+ // Use DualAgentOrchestrator for commit message generation with Guardian validation
103
+ const commitOrchestrator = new plugins.smartagent.DualAgentOrchestrator({
104
+ openaiToken: this.aiDocsRef.getOpenaiToken(),
105
+ defaultProvider: 'openai',
106
+ guardianPolicyPrompt: `
107
+ You validate commit messages for semantic versioning compliance.
108
+
109
+ APPROVE if:
110
+ - Version level (fix/feat/BREAKING CHANGE) matches the scope of changes in the diff
111
+ - Commit message is clear, professional, and follows conventional commit conventions
112
+ - No personal information, licensing details, or AI mentions (Claude/Codex) included
113
+ - JSON structure is valid with all required fields
114
+ - Scope accurately reflects the changed modules/files
115
+
116
+ REJECT with specific feedback if:
117
+ - Version level doesn't match the scope of changes (e.g., "feat" for a typo fix should be "fix")
118
+ - Message is vague, unprofessional, or contains sensitive information
119
+ - JSON is malformed or missing required fields (recommendedNextVersionLevel, recommendedNextVersionScope, recommendedNextVersionMessage, recommendedNextVersionDetails, recommendedNextVersion)
120
+ `,
121
+ });
122
+ await commitOrchestrator.start();
123
+ const commitTaskPrompt = `
104
124
  You create a commit message for a git commit.
105
125
  The commit message should be based on the files in the project.
106
126
  You should not include any licensing information.
@@ -125,12 +145,16 @@ For the recommendedNextVersionDetails, please only add a detail entries to the a
125
145
  You are being given the files of the project. You should use them to create the commit message.
126
146
  Also you are given a diff.
127
147
  Never mention CLAUDE code, or codex.
128
- `,
129
- messageHistory: [],
130
- userMessage: contextString,
131
- });
132
- // console.log(result.message);
133
- const resultObject = JSON.parse(result.message.replace('```json', '').replace('```', ''));
148
+
149
+ Project context and diff:
150
+ ${contextString}
151
+ `;
152
+ const commitResult = await commitOrchestrator.run(commitTaskPrompt);
153
+ await commitOrchestrator.stop();
154
+ if (!commitResult.success) {
155
+ throw new Error(`Commit message generation failed: ${commitResult.status}`);
156
+ }
157
+ const resultObject = JSON.parse(commitResult.result.replace('```json', '').replace('```', ''));
134
158
  const previousChangelogPath = plugins.path.join(this.projectDir, 'changelog.md');
135
159
  let previousChangelog;
136
160
  if (await plugins.fsInstance.file(previousChangelogPath).exists()) {
@@ -140,9 +164,28 @@ Never mention CLAUDE code, or codex.
140
164
  // lets build the changelog based on that
141
165
  const commitMessages = await gitRepo.getAllCommitMessages();
142
166
  console.log(JSON.stringify(commitMessages, null, 2));
143
- let result2 = await this.aiDocsRef.openaiInstance.chat({
144
- messageHistory: [],
145
- systemMessage: `
167
+ // Use DualAgentOrchestrator for changelog generation with Guardian validation
168
+ const changelogOrchestrator = new plugins.smartagent.DualAgentOrchestrator({
169
+ openaiToken: this.aiDocsRef.getOpenaiToken(),
170
+ defaultProvider: 'openai',
171
+ guardianPolicyPrompt: `
172
+ You validate changelog generation.
173
+
174
+ APPROVE if:
175
+ - Changelog follows proper markdown format with ## headers for each version
176
+ - Entries are chronologically ordered (newest first)
177
+ - Version ranges for trivial commits are properly summarized
178
+ - No duplicate or empty entries
179
+ - Format matches: ## yyyy-mm-dd - x.x.x - scope
180
+
181
+ REJECT with feedback if:
182
+ - Markdown formatting is incorrect
183
+ - Entries are not meaningful or helpful
184
+ - Dates or versions are malformed
185
+ `,
186
+ });
187
+ await changelogOrchestrator.start();
188
+ const changelogTaskPrompt = `
146
189
  You are building a changelog.md file for the project.
147
190
  Omit commits and versions that lack relevant changes, but make sure to mention them as a range with a summarizing message instead.
148
191
 
@@ -156,14 +199,18 @@ A changelog entry should look like this:
156
199
  You are given:
157
200
  * the commit messages of the project
158
201
 
159
- Only return the changelog file, so it can be written directly to changelog.md`,
160
- userMessage: `
202
+ Only return the changelog file content, so it can be written directly to changelog.md.
203
+
161
204
  Here are the commit messages:
162
205
 
163
206
  ${JSON.stringify(commitMessages, null, 2)}
164
- `,
165
- });
166
- previousChangelog = plugins.smartfileFactory.fromString(previousChangelogPath, result2.message.replaceAll('```markdown', '').replaceAll('```', ''), 'utf8');
207
+ `;
208
+ const changelogResult = await changelogOrchestrator.run(changelogTaskPrompt);
209
+ await changelogOrchestrator.stop();
210
+ if (!changelogResult.success) {
211
+ throw new Error(`Changelog generation failed: ${changelogResult.status}`);
212
+ }
213
+ previousChangelog = plugins.smartfileFactory.fromString(previousChangelogPath, changelogResult.result.replaceAll('```markdown', '').replaceAll('```', ''), 'utf8');
167
214
  }
168
215
  let oldChangelog = previousChangelog.contents.toString().replace('# Changelog\n\n', '');
169
216
  if (oldChangelog.startsWith('\n')) {
@@ -178,4 +225,4 @@ ${JSON.stringify(commitMessages, null, 2)}
178
225
  return resultObject;
179
226
  }
180
227
  }
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvYWlkb2NzX2NsYXNzZXMvY29tbWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBVzdELE1BQU0sT0FBTyxNQUFNO0lBSWpCLFlBQVksU0FBZ0IsRUFBRSxhQUFxQjtRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQztJQUNsQyxDQUFDO0lBRU0sS0FBSyxDQUFDLHFCQUFxQjtRQUNoQyxNQUFNLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN6RCxNQUFNLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlCLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQy9ELGdCQUFnQixFQUNoQixJQUFJLENBQUMsVUFBVSxDQUNoQixDQUFDO1FBRUYsMENBQTBDO1FBQzFDLGtEQUFrRDtRQUNsRCxNQUFNLGVBQWUsR0FBRztZQUN0QixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsV0FBVztZQUNYLFdBQVc7WUFDWCxXQUFXO1lBRVgsa0RBQWtEO1lBQ2xELFNBQVM7WUFDVCxXQUFXLEVBQVksMEJBQTBCO1lBQ2pELFVBQVU7WUFDVixVQUFVO1lBQ1YsUUFBUTtZQUNSLGdCQUFnQjtZQUVoQix5QkFBeUI7WUFDekIsYUFBYTtZQUNiLGVBQWU7WUFDZixh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
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvYWlkb2NzX2NsYXNzZXMvY29tbWl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBVzdELE1BQU0sT0FBTyxNQUFNO0lBSWpCLFlBQVksU0FBZ0IsRUFBRSxhQUFxQjtRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQztJQUNsQyxDQUFDO0lBRU0sS0FBSyxDQUFDLHFCQUFxQjtRQUNoQyxNQUFNLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN6RCxNQUFNLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlCLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQy9ELGdCQUFnQixFQUNoQixJQUFJLENBQUMsVUFBVSxDQUNoQixDQUFDO1FBRUYsMENBQTBDO1FBQzFDLGtEQUFrRDtRQUNsRCxNQUFNLGVBQWUsR0FBRztZQUN0QixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsV0FBVztZQUNYLFdBQVc7WUFDWCxXQUFXO1lBRVgsa0RBQWtEO1lBQ2xELFNBQVM7WUFDVCxXQUFXLEVBQVksMEJBQTBCO1lBQ2pELFVBQVU7WUFDVixVQUFVO1lBQ1YsUUFBUTtZQUNSLGdCQUFnQjtZQUVoQix5QkFBeUI7WUFDekIsYUFBYTtZQUNiLGVBQWU7WUFDZixh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
@@ -11,6 +11,7 @@ export declare class AiDoc {
11
11
  private printSanitizedToken;
12
12
  start(): Promise<void>;
13
13
  stop(): Promise<void>;
14
+ getOpenaiToken(): string;
14
15
  buildReadme(projectDirArg: string): Promise<string>;
15
16
  buildDescription(projectDirArg: string): Promise<string>;
16
17
  buildNextCommitObject(projectDirArg: string): Promise<aiDocsClasses.INextCommitObject>;
@@ -80,6 +80,9 @@ export class AiDoc {
80
80
  // No explicit cleanup needed for npmextraKV or aidocInteract
81
81
  // They don't keep event loop alive
82
82
  }
83
+ getOpenaiToken() {
84
+ return this.openaiToken;
85
+ }
83
86
  async buildReadme(projectDirArg) {
84
87
  const readmeInstance = new aiDocsClasses.Readme(this, projectDirArg);
85
88
  return await readmeInstance.build();
@@ -127,4 +130,4 @@ export class AiDoc {
127
130
  return projectContextInstance.countTokens(text, model);
128
131
  }
129
132
  }
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5haWRvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2NsYXNzZXMuYWlkb2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFFeEMsT0FBTyxLQUFLLGFBQWEsTUFBTSwyQkFBMkIsQ0FBQztBQUUzRCxNQUFNLE9BQU8sS0FBSztJQVVoQixZQUFZLE9BQWE7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixpRkFBaUY7UUFDakYsSUFBSSxVQUFrQixDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEMsbURBQW1EO1lBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNwRSxVQUFVLEdBQUcsR0FBRyxLQUFLLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbkMsQ0FBQzthQUFNLENBQUM7WUFDTixtREFBbUQ7WUFDbkQsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDaEMsQ0FBQztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLGdDQUFnQztRQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJ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
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5haWRvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2NsYXNzZXMuYWlkb2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFFeEMsT0FBTyxLQUFLLGFBQWEsTUFBTSwyQkFBMkIsQ0FBQztBQUUzRCxNQUFNLE9BQU8sS0FBSztJQVVoQixZQUFZLE9BQWE7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixpRkFBaUY7UUFDakYsSUFBSSxVQUFrQixDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEMsbURBQW1EO1lBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNwRSxVQUFVLEdBQUcsR0FBRyxLQUFLLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbkMsQ0FBQzthQUFNLENBQUM7WUFDTixtREFBbUQ7WUFDbkQsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDaEMsQ0FBQztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLGdDQUFnQztRQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJ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
package/dist_ts/cli.js CHANGED
File without changes
@@ -2,6 +2,7 @@ import * as path from 'path';
2
2
  export { path };
3
3
  import * as npmextra from '@push.rocks/npmextra';
4
4
  import * as qenv from '@push.rocks/qenv';
5
+ import * as smartagent from '@push.rocks/smartagent';
5
6
  import * as smartai from '@push.rocks/smartai';
6
7
  import * as smartcli from '@push.rocks/smartcli';
7
8
  import * as smartdelay from '@push.rocks/smartdelay';
@@ -14,7 +15,7 @@ import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-loca
14
15
  import * as smartpath from '@push.rocks/smartpath';
15
16
  import * as smartshell from '@push.rocks/smartshell';
16
17
  import * as smarttime from '@push.rocks/smarttime';
17
- export { npmextra, qenv, smartai, smartcli, smartdelay, smartfile, smartfs, smartgit, smartinteract, smartlog, smartlogDestinationLocal, smartpath, smartshell, smarttime, };
18
+ export { npmextra, qenv, smartagent, smartai, smartcli, smartdelay, smartfile, smartfs, smartgit, smartinteract, smartlog, smartlogDestinationLocal, smartpath, smartshell, smarttime, };
18
19
  export declare const fsInstance: smartfs.SmartFs;
19
20
  export declare const smartfileFactory: smartfile.SmartFileFactory;
20
21
  import * as tspublish from '@git.zone/tspublish';
@@ -4,6 +4,7 @@ export { path };
4
4
  // pushrocks scope
5
5
  import * as npmextra from '@push.rocks/npmextra';
6
6
  import * as qenv from '@push.rocks/qenv';
7
+ import * as smartagent from '@push.rocks/smartagent';
7
8
  import * as smartai from '@push.rocks/smartai';
8
9
  import * as smartcli from '@push.rocks/smartcli';
9
10
  import * as smartdelay from '@push.rocks/smartdelay';
@@ -16,7 +17,7 @@ import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-loca
16
17
  import * as smartpath from '@push.rocks/smartpath';
17
18
  import * as smartshell from '@push.rocks/smartshell';
18
19
  import * as smarttime from '@push.rocks/smarttime';
19
- export { npmextra, qenv, smartai, smartcli, smartdelay, smartfile, smartfs, smartgit, smartinteract, smartlog, smartlogDestinationLocal, smartpath, smartshell, smarttime, };
20
+ export { npmextra, qenv, smartagent, smartai, smartcli, smartdelay, smartfile, smartfs, smartgit, smartinteract, smartlog, smartlogDestinationLocal, smartpath, smartshell, smarttime, };
20
21
  // Create a shared SmartFs instance for filesystem operations
21
22
  const smartFsNodeProvider = new smartfs.SmartFsProviderNode();
22
23
  export const fsInstance = new smartfs.SmartFs(smartFsNodeProvider);
@@ -29,4 +30,4 @@ export { tspublish };
29
30
  import * as typedoc from 'typedoc';
30
31
  import * as gptTokenizer from 'gpt-tokenizer';
31
32
  export { typedoc, gptTokenizer };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3BsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUNkLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUVoQixrQkFBa0I7QUFDbEIsT0FBTyxLQUFLLFFBQVEsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssSUFBSSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxPQUFPLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxLQUFLLFFBQVEsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxLQUFLLE9BQU8sTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxhQUFhLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxLQUFLLFFBQVEsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssd0JBQXdCLE1BQU0sd0NBQXdDLENBQUM7QUFDbkYsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFFbkQsT0FBTyxFQUNMLFFBQVEsRUFDUixJQUFJLEVBQ0osT0FBTyxFQUNQLFFBQVEsRUFDUixVQUFVLEVBQ1YsU0FBUyxFQUNULE9BQU8sRUFDUCxRQUFRLEVBQ1IsYUFBYSxFQUNiLFFBQVEsRUFDUix3QkFBd0IsRUFDeEIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEdBQ1YsQ0FBQztBQUVGLDZEQUE2RDtBQUM3RCxNQUFNLG1CQUFtQixHQUFHLElBQUksT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0FBRW5FLGlFQUFpRTtBQUNqRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7QUFFcEUsa0JBQWtCO0FBQ2xCLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDO0FBRXJCLG9CQUFvQjtBQUNwQixPQUFPLEtBQUssT0FBTyxNQUFNLFNBQVMsQ0FBQztBQUNuQyxPQUFPLEtBQUssWUFBWSxNQUFNLGVBQWUsQ0FBQztBQUU5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDIn0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3BsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUNkLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUVoQixrQkFBa0I7QUFDbEIsT0FBTyxLQUFLLFFBQVEsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssSUFBSSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxLQUFLLE9BQU8sTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssT0FBTyxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxRQUFRLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxLQUFLLGFBQWEsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyx3QkFBd0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRixPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCxPQUFPLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixVQUFVLEVBQ1YsT0FBTyxFQUNQLFFBQVEsRUFDUixVQUFVLEVBQ1YsU0FBUyxFQUNULE9BQU8sRUFDUCxRQUFRLEVBQ1IsYUFBYSxFQUNiLFFBQVEsRUFDUix3QkFBd0IsRUFDeEIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEdBQ1YsQ0FBQztBQUVGLDZEQUE2RDtBQUM3RCxNQUFNLG1CQUFtQixHQUFHLElBQUksT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0FBRW5FLGlFQUFpRTtBQUNqRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7QUFFcEUsa0JBQWtCO0FBQ2xCLE9BQU8sS0FBSyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDO0FBRXJCLG9CQUFvQjtBQUNwQixPQUFPLEtBQUssT0FBTyxNQUFNLFNBQVMsQ0FBQztBQUNuQyxPQUFPLEtBQUssWUFBWSxNQUFNLGVBQWUsQ0FBQztBQUU5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDIn0=
package/npmextra.json CHANGED
@@ -31,5 +31,14 @@
31
31
  },
32
32
  "tsdoc": {
33
33
  "legal": "\n## License and Legal Information\n\nThis repository contains open-source code that is licensed under the MIT License. A copy of the MIT License can be found in the [license](license) file within this repository. \n\n**Please note:** The MIT License does not grant permission to use the trade names, trademarks, service marks, or product names of the project, except as required for reasonable and customary use in describing the origin of the work and reproducing the content of the NOTICE file.\n\n### Trademarks\n\nThis project is owned and maintained by Task Venture Capital GmbH. The names and logos associated with Task Venture Capital GmbH and any related products or services are trademarks of Task Venture Capital GmbH and are not included within the scope of the MIT license granted herein. Use of these trademarks must comply with Task Venture Capital GmbH's Trademark Guidelines, and any usage must be approved in writing by Task Venture Capital GmbH.\n\n### Company Information\n\nTask Venture Capital GmbH \nRegistered at District court Bremen HRB 35230 HB, Germany\n\nFor any legal inquiries or if you require further information, please contact us via email at hello@task.vc.\n\nBy using this repository, you acknowledge that you have read this section, agree to comply with its terms, and understand that the licensing of the code does not imply endorsement by Task Venture Capital GmbH of any derivative works.\n"
34
+ },
35
+ "@git.zone/cli": {
36
+ "release": {
37
+ "registries": [
38
+ "https://verdaccio.lossless.digital",
39
+ "https://registry.npmjs.org"
40
+ ],
41
+ "accessLevel": "public"
42
+ }
34
43
  }
35
44
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@git.zone/tsdoc",
3
- "version": "1.10.2",
3
+ "version": "1.11.0",
4
4
  "private": false,
5
5
  "description": "A comprehensive TypeScript documentation tool that leverages AI to generate and enhance project documentation, including dynamic README creation, API docs via TypeDoc, and smart commit message generation.",
6
6
  "type": "module",
@@ -12,6 +12,12 @@
12
12
  "bin": {
13
13
  "tsdoc": "cli.js"
14
14
  },
15
+ "scripts": {
16
+ "test": "(tstest test/ --verbose --logfile --timeout 600) && npm run testCli",
17
+ "testCli": "(node ./cli.ts.js) && (node ./cli.ts.js aidocs)",
18
+ "build": "(tsbuild --web --allowimplicitany)",
19
+ "buildDocs": "tsdoc"
20
+ },
15
21
  "devDependencies": {
16
22
  "@git.zone/tsbuild": "^3.1.2",
17
23
  "@git.zone/tsrun": "^2.0.1",
@@ -23,6 +29,7 @@
23
29
  "@push.rocks/early": "^4.0.4",
24
30
  "@push.rocks/npmextra": "^5.3.3",
25
31
  "@push.rocks/qenv": "^6.1.3",
32
+ "@push.rocks/smartagent": "file:../../push.rocks/smartagent",
26
33
  "@push.rocks/smartai": "^0.8.0",
27
34
  "@push.rocks/smartcli": "^4.0.19",
28
35
  "@push.rocks/smartdelay": "^3.0.5",
@@ -75,10 +82,5 @@
75
82
  "url": "https://gitlab.com/gitzone/tsdoc/issues"
76
83
  },
77
84
  "homepage": "https://gitlab.com/gitzone/tsdoc#readme",
78
- "scripts": {
79
- "test": "(tstest test/ --verbose --logfile --timeout 600) && npm run testCli",
80
- "testCli": "(node ./cli.ts.js) && (node ./cli.ts.js aidocs)",
81
- "build": "(tsbuild --web --allowimplicitany)",
82
- "buildDocs": "tsdoc"
83
- }
84
- }
85
+ "packageManager": "pnpm@10.14.0+sha512.ad27a79641b49c3e481a16a805baa71817a04bbe06a38d17e60e2eaee83f6a146c6a688125f5792e48dd5ba30e7da52a5cda4c3992b9ccf333f9ce223af84748"
86
+ }
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@git.zone/tsdoc',
6
- version: '1.10.0',
6
+ version: '1.11.0',
7
7
  description: 'A comprehensive TypeScript documentation tool that leverages AI to generate and enhance project documentation, including dynamic README creation, API docs via TypeDoc, and smart commit message generation.'
8
8
  }
@@ -137,8 +137,30 @@ export class Commit {
137
137
  console.log(`The model may not be able to process all information effectively.`);
138
138
  }
139
139
 
140
- let result = await this.aiDocsRef.openaiInstance.chat({
141
- systemMessage: `
140
+ // Use DualAgentOrchestrator for commit message generation with Guardian validation
141
+ const commitOrchestrator = new plugins.smartagent.DualAgentOrchestrator({
142
+ openaiToken: this.aiDocsRef.getOpenaiToken(),
143
+ defaultProvider: 'openai',
144
+ guardianPolicyPrompt: `
145
+ You validate commit messages for semantic versioning compliance.
146
+
147
+ APPROVE if:
148
+ - Version level (fix/feat/BREAKING CHANGE) matches the scope of changes in the diff
149
+ - Commit message is clear, professional, and follows conventional commit conventions
150
+ - No personal information, licensing details, or AI mentions (Claude/Codex) included
151
+ - JSON structure is valid with all required fields
152
+ - Scope accurately reflects the changed modules/files
153
+
154
+ REJECT with specific feedback if:
155
+ - Version level doesn't match the scope of changes (e.g., "feat" for a typo fix should be "fix")
156
+ - Message is vague, unprofessional, or contains sensitive information
157
+ - JSON is malformed or missing required fields (recommendedNextVersionLevel, recommendedNextVersionScope, recommendedNextVersionMessage, recommendedNextVersionDetails, recommendedNextVersion)
158
+ `,
159
+ });
160
+
161
+ await commitOrchestrator.start();
162
+
163
+ const commitTaskPrompt = `
142
164
  You create a commit message for a git commit.
143
165
  The commit message should be based on the files in the project.
144
166
  You should not include any licensing information.
@@ -163,14 +185,20 @@ For the recommendedNextVersionDetails, please only add a detail entries to the a
163
185
  You are being given the files of the project. You should use them to create the commit message.
164
186
  Also you are given a diff.
165
187
  Never mention CLAUDE code, or codex.
166
- `,
167
- messageHistory: [],
168
- userMessage: contextString,
169
- });
170
188
 
171
- // console.log(result.message);
189
+ Project context and diff:
190
+ ${contextString}
191
+ `;
192
+
193
+ const commitResult = await commitOrchestrator.run(commitTaskPrompt);
194
+ await commitOrchestrator.stop();
195
+
196
+ if (!commitResult.success) {
197
+ throw new Error(`Commit message generation failed: ${commitResult.status}`);
198
+ }
199
+
172
200
  const resultObject: INextCommitObject = JSON.parse(
173
- result.message.replace('```json', '').replace('```', '')
201
+ commitResult.result.replace('```json', '').replace('```', '')
174
202
  );
175
203
 
176
204
  const previousChangelogPath = plugins.path.join(this.projectDir, 'changelog.md');
@@ -183,9 +211,31 @@ Never mention CLAUDE code, or codex.
183
211
  // lets build the changelog based on that
184
212
  const commitMessages = await gitRepo.getAllCommitMessages();
185
213
  console.log(JSON.stringify(commitMessages, null, 2));
186
- let result2 = await this.aiDocsRef.openaiInstance.chat({
187
- messageHistory: [],
188
- systemMessage: `
214
+
215
+ // Use DualAgentOrchestrator for changelog generation with Guardian validation
216
+ const changelogOrchestrator = new plugins.smartagent.DualAgentOrchestrator({
217
+ openaiToken: this.aiDocsRef.getOpenaiToken(),
218
+ defaultProvider: 'openai',
219
+ guardianPolicyPrompt: `
220
+ You validate changelog generation.
221
+
222
+ APPROVE if:
223
+ - Changelog follows proper markdown format with ## headers for each version
224
+ - Entries are chronologically ordered (newest first)
225
+ - Version ranges for trivial commits are properly summarized
226
+ - No duplicate or empty entries
227
+ - Format matches: ## yyyy-mm-dd - x.x.x - scope
228
+
229
+ REJECT with feedback if:
230
+ - Markdown formatting is incorrect
231
+ - Entries are not meaningful or helpful
232
+ - Dates or versions are malformed
233
+ `,
234
+ });
235
+
236
+ await changelogOrchestrator.start();
237
+
238
+ const changelogTaskPrompt = `
189
239
  You are building a changelog.md file for the project.
190
240
  Omit commits and versions that lack relevant changes, but make sure to mention them as a range with a summarizing message instead.
191
241
 
@@ -199,17 +249,23 @@ A changelog entry should look like this:
199
249
  You are given:
200
250
  * the commit messages of the project
201
251
 
202
- Only return the changelog file, so it can be written directly to changelog.md`,
203
- userMessage: `
252
+ Only return the changelog file content, so it can be written directly to changelog.md.
253
+
204
254
  Here are the commit messages:
205
255
 
206
256
  ${JSON.stringify(commitMessages, null, 2)}
207
- `,
208
- });
257
+ `;
258
+
259
+ const changelogResult = await changelogOrchestrator.run(changelogTaskPrompt);
260
+ await changelogOrchestrator.stop();
261
+
262
+ if (!changelogResult.success) {
263
+ throw new Error(`Changelog generation failed: ${changelogResult.status}`);
264
+ }
209
265
 
210
266
  previousChangelog = plugins.smartfileFactory.fromString(
211
267
  previousChangelogPath,
212
- result2.message.replaceAll('```markdown', '').replaceAll('```', ''),
268
+ changelogResult.result.replaceAll('```markdown', '').replaceAll('```', ''),
213
269
  'utf8'
214
270
  );
215
271
  }
@@ -99,6 +99,10 @@ export class AiDoc {
99
99
  // They don't keep event loop alive
100
100
  }
101
101
 
102
+ public getOpenaiToken(): string {
103
+ return this.openaiToken;
104
+ }
105
+
102
106
  public async buildReadme(projectDirArg: string) {
103
107
  const readmeInstance = new aiDocsClasses.Readme(this, projectDirArg);
104
108
  return await readmeInstance.build();
package/ts/plugins.ts CHANGED
@@ -6,6 +6,7 @@ export { path };
6
6
  // pushrocks scope
7
7
  import * as npmextra from '@push.rocks/npmextra';
8
8
  import * as qenv from '@push.rocks/qenv';
9
+ import * as smartagent from '@push.rocks/smartagent';
9
10
  import * as smartai from '@push.rocks/smartai';
10
11
  import * as smartcli from '@push.rocks/smartcli';
11
12
  import * as smartdelay from '@push.rocks/smartdelay';
@@ -22,6 +23,7 @@ import * as smarttime from '@push.rocks/smarttime';
22
23
  export {
23
24
  npmextra,
24
25
  qenv,
26
+ smartagent,
25
27
  smartai,
26
28
  smartcli,
27
29
  smartdelay,