test(skills): sync autoresearch skill expectations

This commit is contained in:
Codex Review
2026-04-19 04:34:46 +00:00
parent d7f8d3d2bd
commit 59ee7dbc2d
2 changed files with 18 additions and 9 deletions

View File

@@ -12,7 +12,7 @@ Complete reference for oh-my-claudecode. For quick start, see the main [README.m
- [CLI Commands: ask/team/session](#cli-commands-askteamsession)
- [Legacy MCP Team Runtime Tools (Deprecated)](#legacy-mcp-team-runtime-tools-deprecated)
- [Agents (29 Total)](#agents-29-total)
- [Skills (32 Total)](#skills-32-total)
- [Skills (35 Total)](#skills-35-total)
- [Slash Commands](#slash-commands)
- [Hooks System](#hooks-system)
- [Magic Keywords](#magic-keywords)
@@ -516,9 +516,9 @@ Always use `oh-my-claudecode:` prefix when calling via Task tool.
---
## Skills (33 Total)
## Skills (35 Total)
Includes **32 canonical skills + 1 deprecated alias** (`psm`). Runtime truth comes from the builtin skill loader scanning `skills/*/SKILL.md` and expanding aliases declared in frontmatter.
Includes **34 canonical skills + 1 deprecated alias** (`psm`). Runtime truth comes from the builtin skill loader scanning `skills/*/SKILL.md` and expanding aliases declared in frontmatter.
| Skill | Description | Manual Command |
| ------------------------- | ---------------------------------------------------------------- | ------------------------------------------- |
@@ -546,6 +546,7 @@ Includes **32 canonical skills + 1 deprecated alias** (`psm`). Runtime truth com
| `ralph` | Persistence loop until verified completion | `/oh-my-claudecode:ralph` |
| `ralplan` | Consensus planning alias for `/omc-plan --consensus` | `/oh-my-claudecode:ralplan` |
| `release` | Automated release workflow | `/oh-my-claudecode:release` |
| `self-improve` | Autonomous evolutionary code improvement engine with tournament selection | `/oh-my-claudecode:self-improve` |
| `setup` | Unified setup entrypoint for install, diagnostics, and MCP configuration | `/oh-my-claudecode:setup` |
| `sciomc` | Parallel scientist orchestration | `/oh-my-claudecode:sciomc` |
| `skill` | Manage local skills (list/add/remove/search/edit) | `/oh-my-claudecode:skill` |
@@ -554,6 +555,7 @@ Includes **32 canonical skills + 1 deprecated alias** (`psm`). Runtime truth com
| `ultraqa` | QA cycle until goal is met | `/oh-my-claudecode:ultraqa` |
| `ultrawork` | Maximum parallel throughput mode | `/oh-my-claudecode:ultrawork` |
| `visual-verdict` | Structured visual QA verdict for screenshot/reference comparisons | `/oh-my-claudecode:visual-verdict` |
| `wiki` | LLM Wiki — persistent markdown knowledge base that compounds across sessions | `/oh-my-claudecode:wiki` |
| `writer-memory` | Agentic memory system for writing projects | `/oh-my-claudecode:writer-memory` |

View File

@@ -69,10 +69,10 @@ describe('Builtin Skills', () => {
});
describe('createBuiltinSkills()', () => {
it('should return correct number of skills (33 canonical + 1 alias)', () => {
it('should return correct number of skills (34 canonical + 1 alias)', () => {
const skills = createBuiltinSkills();
// 34 entries: 33 canonical skills + 1 deprecated alias (psm)
expect(skills).toHaveLength(34);
// 35 entries: 34 canonical skills + 1 deprecated alias (psm)
expect(skills).toHaveLength(35);
});
it('should return an array of BuiltinSkill objects', () => {
@@ -465,7 +465,8 @@ describe('Builtin Skills', () => {
const skill = getBuiltinSkill('autoresearch');
expect(skill).toBeDefined();
expect(skill?.name).toBe('autoresearch');
expect(skill?.template).toContain('Stateful single-mission improvement loop');
expect(skill?.template).toContain('stateful skill for bounded, evaluator-driven iterative improvement');
expect(skill?.template).toContain('Single-mission only in v1');
expect(skill?.template).toContain('max-runtime ceiling');
expect(skill?.template).toContain('per-iteration evaluation JSON');
expect(skill?.template).toContain('markdown decision logs');
@@ -547,14 +548,16 @@ describe('Builtin Skills', () => {
it('should return canonical skill names by default', () => {
const names = listBuiltinSkillNames();
expect(names).toHaveLength(33);
expect(names).toHaveLength(34);
expect(names).toContain('ai-slop-cleaner');
expect(names).toContain('ask');
expect(names).toContain('autopilot');
expect(names).toContain('autoresearch');
expect(names).toContain('cancel');
expect(names).toContain('ccg');
expect(names).toContain('configure-notifications');
expect(names).toContain('ralph');
expect(names).toContain('self-improve');
expect(names).toContain('ultrawork');
expect(names).toContain('omc-plan');
expect(names).toContain('omc-reference');
@@ -566,6 +569,7 @@ describe('Builtin Skills', () => {
expect(names).toContain('setup');
expect(names).toContain('trace');
expect(names).toContain('visual-verdict');
expect(names).toContain('wiki');
expect(names).not.toContain('swarm'); // removed in #1131
expect(names).not.toContain('psm');
});
@@ -581,10 +585,13 @@ describe('Builtin Skills', () => {
const names = listBuiltinSkillNames({ includeAliases: true });
// swarm alias removed in #1131, psm still exists
expect(names).toHaveLength(34);
expect(names).toHaveLength(35);
expect(names).toContain('ai-slop-cleaner');
expect(names).toContain('autoresearch');
expect(names).toContain('self-improve');
expect(names).toContain('trace');
expect(names).toContain('visual-verdict');
expect(names).toContain('wiki');
expect(names).not.toContain('swarm');
expect(names).toContain('psm');
});