@lousy-agents/cli 2.10.0 → 2.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.
@@ -65785,7 +65785,9 @@ const remark = unified().use(remarkParse).use(remarkStringify).freeze()
65785
65785
  commandScores: [],
65786
65786
  overallQualityScore: 0,
65787
65787
  suggestions: [
65788
- "No agent instruction files found. Supported formats: .github/copilot-instructions.md, .github/instructions/*.md, .github/agents/*.md, AGENTS.md, CLAUDE.md"
65788
+ {
65789
+ message: "No agent instruction files found. Supported formats: .github/copilot-instructions.md, .github/instructions/*.md, .github/agents/*.md, AGENTS.md, CLAUDE.md"
65790
+ }
65789
65791
  ],
65790
65792
  parsingErrors: []
65791
65793
  },
@@ -65852,7 +65854,10 @@ const remark = unified().use(remarkParse).use(remarkStringify).freeze()
65852
65854
  const suggestions = this.generateSuggestions(commandScores);
65853
65855
  if (parsingErrors.length > 0) {
65854
65856
  const skippedFiles = parsingErrors.map((pe)=>pe.filePath).join(", ");
65855
- suggestions.push(`${parsingErrors.length} file(s) could not be parsed and were skipped: ${skippedFiles}. Analysis may be incomplete.`);
65857
+ suggestions.push({
65858
+ message: `${parsingErrors.length} file(s) could not be parsed and were skipped: ${skippedFiles}. Analysis may be incomplete.`,
65859
+ ruleId: "instruction/parse-error"
65860
+ });
65856
65861
  }
65857
65862
  return {
65858
65863
  result: {
@@ -66066,22 +66071,33 @@ const remark = unified().use(remarkParse).use(remarkStringify).freeze()
66066
66071
  const lowStructural = commandScores.filter((s)=>s.structuralContext === 0 && s.bestSourceFile !== "");
66067
66072
  if (lowStructural.length > 0) {
66068
66073
  const names = lowStructural.map((s)=>s.commandName).join(", ");
66069
- suggestions.push(`Commands not under a dedicated section: ${names}. Add a heading like "## Validation" or "## Feedback Loop" above these commands.`);
66074
+ suggestions.push({
66075
+ message: `Commands not under a dedicated section: ${names}. Add a heading like "## Validation" or "## Feedback Loop" above these commands.`,
66076
+ ruleId: "instruction/command-outside-section"
66077
+ });
66070
66078
  }
66071
66079
  const lowExecution = commandScores.filter((s)=>s.executionClarity === 0 && s.bestSourceFile !== "");
66072
66080
  if (lowExecution.length > 0) {
66073
66081
  const names = lowExecution.map((s)=>s.commandName).join(", ");
66074
- suggestions.push(`Commands not in code blocks: ${names}. Document these commands in fenced code blocks for clarity.`);
66082
+ suggestions.push({
66083
+ message: `Commands not in code blocks: ${names}. Document these commands in fenced code blocks for clarity.`,
66084
+ ruleId: "instruction/command-not-in-code-block"
66085
+ });
66075
66086
  }
66076
66087
  const lowLoop = commandScores.filter((s)=>s.loopCompleteness === 0 && s.executionClarity === 1 && s.bestSourceFile !== "");
66077
66088
  if (lowLoop.length > 0) {
66078
66089
  const names = lowLoop.map((s)=>s.commandName).join(", ");
66079
- suggestions.push(`Commands missing error handling guidance: ${names}. Add instructions for what to do if the command fails.`);
66090
+ suggestions.push({
66091
+ message: `Commands missing error handling guidance: ${names}. Add instructions for what to do if the command fails.`,
66092
+ ruleId: "instruction/missing-error-handling"
66093
+ });
66080
66094
  }
66081
66095
  const notFound = commandScores.filter((s)=>s.bestSourceFile === "");
66082
66096
  if (notFound.length > 0) {
66083
66097
  const names = notFound.map((s)=>s.commandName).join(", ");
66084
- suggestions.push(`Commands not found in any instruction file: ${names}. Document these feedback loop commands in your instruction files.`);
66098
+ suggestions.push({
66099
+ message: `Commands not found in any instruction file: ${names}. Document these feedback loop commands in your instruction files.`
66100
+ });
66085
66101
  }
66086
66102
  return suggestions;
66087
66103
  }
@@ -66126,7 +66142,7 @@ const remark = unified().use(remarkParse).use(remarkStringify).freeze()
66126
66142
  bestSourceFile: s.bestSourceFile
66127
66143
  })),
66128
66144
  overallQualityScore: output.result.overallQualityScore,
66129
- suggestions: output.result.suggestions,
66145
+ suggestions: output.result.suggestions.map((s)=>s.message),
66130
66146
  parsingErrors: output.result.parsingErrors,
66131
66147
  diagnostics: output.diagnostics.map((d)=>({
66132
66148
  filePath: d.filePath,