waypoint-codex 0.20.0 → 1.0.1

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 (41) hide show
  1. package/README.md +18 -37
  2. package/dist/src/cli.js +1 -1
  3. package/dist/src/core.js +33 -116
  4. package/dist/src/docs-index.js +1 -1
  5. package/dist/src/templates.js +0 -10
  6. package/package.json +1 -1
  7. package/templates/.agents/skills/agi-help/SKILL.md +1 -1
  8. package/templates/.agents/skills/code-guide-audit/SKILL.md +1 -5
  9. package/templates/.agents/skills/planning/SKILL.md +6 -10
  10. package/templates/.agents/skills/pr-review/SKILL.md +0 -1
  11. package/templates/.codex/agents/code-health-reviewer.toml +7 -5
  12. package/templates/.codex/agents/code-reviewer.toml +7 -5
  13. package/templates/.codex/agents/plan-reviewer.toml +7 -5
  14. package/templates/.waypoint/ACTIVE_PLANS.md +7 -7
  15. package/templates/.waypoint/README.md +5 -8
  16. package/templates/.waypoint/config.toml +0 -5
  17. package/templates/.waypoint/docs/README.md +1 -3
  18. package/templates/.waypoint/scripts/build-docs-index.mjs +25 -11
  19. package/templates/.waypoint/scripts/prepare-context.mjs +120 -205
  20. package/templates/WORKSPACE.md +2 -6
  21. package/templates/managed-agents-block.md +20 -11
  22. package/dist/src/track-index.js +0 -107
  23. package/templates/.agents/skills/break-it-qa/SKILL.md +0 -184
  24. package/templates/.agents/skills/break-it-qa/agents/openai.yaml +0 -4
  25. package/templates/.agents/skills/conversation-retrospective/SKILL.md +0 -147
  26. package/templates/.agents/skills/conversation-retrospective/agents/openai.yaml +0 -4
  27. package/templates/.agents/skills/docs-sync/SKILL.md +0 -78
  28. package/templates/.agents/skills/docs-sync/agents/openai.yaml +0 -4
  29. package/templates/.agents/skills/merge-ready-owner/SKILL.md +0 -196
  30. package/templates/.agents/skills/merge-ready-owner/agents/openai.yaml +0 -4
  31. package/templates/.agents/skills/pre-pr-hygiene/SKILL.md +0 -83
  32. package/templates/.agents/skills/pre-pr-hygiene/agents/openai.yaml +0 -4
  33. package/templates/.agents/skills/work-tracker/SKILL.md +0 -141
  34. package/templates/.agents/skills/work-tracker/agents/openai.yaml +0 -4
  35. package/templates/.agents/skills/workspace-compress/SKILL.md +0 -113
  36. package/templates/.agents/skills/workspace-compress/agents/openai.yaml +0 -4
  37. package/templates/.waypoint/SOUL.md +0 -71
  38. package/templates/.waypoint/agent-operating-manual.md +0 -109
  39. package/templates/.waypoint/scripts/build-track-index.mjs +0 -169
  40. package/templates/.waypoint/track/README.md +0 -38
  41. package/templates/.waypoint/track/_template.md +0 -48
package/README.md CHANGED
@@ -73,7 +73,7 @@ better default.
73
73
  ### 1. Better default behavior
74
74
 
75
75
  Waypoint gives Codex stronger repo guidance through the generated contract,
76
- operating manual, core behavior files, and repo-local instructions.
76
+ workspace files, and repo-local instructions.
77
77
 
78
78
  That means the agent is pushed to:
79
79
 
@@ -120,9 +120,7 @@ Waypoint also helps Codex follow through on bigger tasks.
120
120
 
121
121
  It includes workflows for:
122
122
 
123
- - long-running task tracking
124
123
  - ship-readiness audits
125
- - merge-ready ownership
126
124
  - deliberate review passes before PR or merge
127
125
 
128
126
  This helps the agent keep moving until the work is actually ready, not just
@@ -141,8 +139,6 @@ That includes:
141
139
  - user-scoped guidance for true cross-project standing rules
142
140
  - project-scoped guidance for durable repo-wide context and always-on rules
143
141
  - repo-local skills for workflow-specific or method-specific guidance
144
- - retrospectives that turn friction from the current conversation into lasting
145
- improvements
146
142
 
147
143
  ### 6. Better continuity
148
144
 
@@ -163,23 +159,20 @@ Waypoint scaffolds a Codex-friendly repo around a few core pieces:
163
159
 
164
160
  - `AGENTS.md` for the project-scoped startup contract and durable repo guidance
165
161
  - `.waypoint/WORKSPACE.md` for live operational state
166
- - `.waypoint/ACTIVE_PLANS.md` for the currently approved plan and active phase checkpoints
162
+ - `.waypoint/ACTIVE_PLANS.md` for the current active plan, checklist, blockers, and verification state
167
163
  - `.waypoint/docs/` for long-lived project docs
168
164
  - `.waypoint/plans/` for durable plan documents
169
- - `.waypoint/DOCS_INDEX.md` for docs and plans routing, so the agent knows what
170
- to read and when
171
- - `.waypoint/context/` for generated startup context
165
+ - `.waypoint/DOCS_INDEX.md` for docs routing, so the agent knows what to read and when
166
+ - `.waypoint/context/` for generated volatile context
167
+ - `.waypoint/context/SNAPSHOT.md` for repo state and PR context
172
168
  - `.waypoint/context/RECENT_THREAD.md` for compact continuity from the previous
173
169
  conversation
174
- - `.waypoint/track/` for long-running work that truly needs durable progress
175
- tracking
176
170
  - `.agents/skills/` for optional structured workflows
177
171
  - `.codex/` for optional reviewer and helper agents
178
172
 
179
- By default, Waypoint routes docs from `.waypoint/docs/` and plans from
180
- `.waypoint/plans/`.
173
+ By default, Waypoint routes docs from `.waypoint/docs/`.
181
174
  If your repo keeps routable docs elsewhere, you can add more explicit roots in
182
- `.waypoint/config.toml` with `docs_dirs` and `plans_dirs`.
175
+ `.waypoint/config.toml` with `docs_dirs`.
183
176
  Waypoint scans each configured root recursively and only includes Markdown files
184
177
  with valid Waypoint frontmatter.
185
178
 
@@ -237,12 +230,10 @@ repo/
237
230
  │ └── skills/
238
231
  └── .waypoint/
239
232
  ├── DOCS_INDEX.md
240
- ├── TRACKS_INDEX.md
241
233
  ├── WORKSPACE.md
242
234
  ├── ACTIVE_PLANS.md
243
235
  ├── docs/
244
236
  ├── plans/
245
- ├── track/
246
237
  ├── context/
247
238
  ├── scripts/
248
239
  └── ...
@@ -257,11 +248,6 @@ docs_dirs = [
257
248
  ".waypoint/docs",
258
249
  "services/app/docs",
259
250
  ]
260
-
261
- plans_dirs = [
262
- ".waypoint/plans",
263
- "services/app/plans",
264
- ]
265
251
  ```
266
252
 
267
253
  ## Built-in skills
@@ -269,18 +255,13 @@ plans_dirs = [
269
255
  Waypoint ships a strong default skill pack for real coding work:
270
256
 
271
257
  - `planning`
272
- - `work-tracker`
273
- - `docs-sync`
274
258
  - `code-guide-audit`
275
259
  - `adversarial-review`
276
- - `break-it-qa`
277
- - `conversation-retrospective`
278
260
  - `frontend-ship-audit`
279
261
  - `backend-ship-audit`
280
- - `merge-ready-owner`
281
- - `workspace-compress`
282
- - `pre-pr-hygiene`
283
262
  - `pr-review`
263
+ - `frontend-context-interview`
264
+ - `backend-context-interview`
284
265
  - `agi-help`
285
266
 
286
267
  These are repo-local, so the workflow travels with the project.
@@ -305,18 +286,18 @@ The most important ones are:
305
286
  pass
306
287
  - `frontend-ship-audit` when frontend work needs a deeper product, UX, and ship
307
288
  readiness pass
308
- - `docs-sync` when the implementation changed and the repo docs should be
309
- brought back in sync
310
- - `conversation-retrospective` when the conversation exposed friction,
311
- corrections, or workflow problems that should become durable improvements
312
- - `merge-ready-owner` when you want the agent to own the task all the way to a
313
- merge-ready result with stronger autonomy
289
+ - `frontend-context-interview` / `backend-context-interview` when durable
290
+ project context is missing and would materially change implementation choices
291
+ - `pr-review` when an open PR already has active review comments or automated
292
+ review in flight
293
+ - `agi-help` when you want a high-quality external handoff package for
294
+ GPT-5.4-Pro
314
295
 
315
296
  The practical rule is:
316
297
 
317
298
  - install Waypoint for better defaults
318
299
  - invoke the higher-rigor skills when you want a stronger planning, audit,
319
- review, docs, or closeout pass
300
+ review, or closeout pass
320
301
 
321
302
  ## Reviewer agents
322
303
 
@@ -326,7 +307,7 @@ Waypoint scaffolds these reviewer agents by default:
326
307
  - `code-reviewer`
327
308
  - `plan-reviewer`
328
309
 
329
- They are available for deliberate second passes and for ownership workflows like `merge-ready-owner`.
310
+ They are available for deliberate second passes.
330
311
 
331
312
  ## What makes Waypoint different
332
313
 
@@ -346,7 +327,7 @@ Waypoint is opinionated, but explicit:
346
327
 
347
328
  - `waypoint init` — scaffold or refresh the repo and, by default, update the global CLI first
348
329
  - `waypoint doctor` — validate health and report drift
349
- - `waypoint sync` — rebuild the docs/plans and tracker indexes
330
+ - `waypoint sync` — rebuild the docs index
350
331
  - `waypoint upgrade` — update the CLI and refresh the current repo using its saved config
351
332
 
352
333
  ## Learn more
package/dist/src/cli.js CHANGED
@@ -29,7 +29,7 @@ function printHelp() {
29
29
  Commands:
30
30
  init Initialize a repository with Waypoint scaffolding (auto-updates CLI unless skipped)
31
31
  doctor Validate repository health and report drift
32
- sync Rebuild docs/plans and tracker indexes
32
+ sync Rebuild the docs index
33
33
  upgrade Update the global Waypoint CLI and refresh this repo using existing config
34
34
  `);
35
35
  }
package/dist/src/core.js CHANGED
@@ -2,14 +2,11 @@ import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, rmSync,
2
2
  import path from "node:path";
3
3
  import * as TOML from "@iarna/toml";
4
4
  import { renderDocsIndex } from "./docs-index.js";
5
- import { renderTracksIndex } from "./track-index.js";
6
5
  import { defaultWaypointConfig, readTemplate, renderWaypointConfig, MANAGED_BLOCK_END, MANAGED_BLOCK_START, templatePath, } from "./templates.js";
7
6
  const DEFAULT_CONFIG_PATH = ".waypoint/config.toml";
8
7
  const DEFAULT_DOCS_DIR = ".waypoint/docs";
9
8
  const DEFAULT_DOCS_INDEX = ".waypoint/DOCS_INDEX.md";
10
9
  const DEFAULT_PLANS_DIR = ".waypoint/plans";
11
- const DEFAULT_TRACK_DIR = ".waypoint/track";
12
- const DEFAULT_TRACKS_INDEX = ".waypoint/TRACKS_INDEX.md";
13
10
  const DEFAULT_WORKSPACE = ".waypoint/WORKSPACE.md";
14
11
  const DEFAULT_ACTIVE_PLANS = ".waypoint/ACTIVE_PLANS.md";
15
12
  const GITIGNORE_WAYPOINT_START = "# Waypoint state";
@@ -25,34 +22,24 @@ const LEGACY_WAYPOINT_GITIGNORE_RULES = new Set([
25
22
  ".agents/",
26
23
  ".agents/skills/",
27
24
  ".agents/skills/planning/",
28
- ".agents/skills/work-tracker/",
29
- ".agents/skills/docs-sync/",
30
25
  ".agents/skills/code-guide-audit/",
31
26
  ".agents/skills/adversarial-review/",
32
27
  ".agents/skills/visual-explanations/",
33
- ".agents/skills/break-it-qa/",
34
28
  ".agents/skills/frontend-context-interview/",
35
29
  ".agents/skills/backend-context-interview/",
36
30
  ".agents/skills/frontend-ship-audit/",
37
31
  ".agents/skills/backend-ship-audit/",
38
- ".agents/skills/conversation-retrospective/",
39
- ".agents/skills/merge-ready-owner/",
40
- ".agents/skills/workspace-compress/",
41
- ".agents/skills/pre-pr-hygiene/",
42
32
  ".agents/skills/pr-review/",
33
+ ".agents/skills/agi-help/",
43
34
  ".waypoint/config.toml",
44
35
  ".waypoint/README.md",
45
- ".waypoint/SOUL.md",
46
36
  ".waypoint/WORKSPACE.md",
47
37
  ".waypoint/ACTIVE_PLANS.md",
48
- ".waypoint/agent-operating-manual.md",
49
38
  ".waypoint/",
50
39
  ".waypoint/DOCS_INDEX.md",
51
- ".waypoint/TRACKS_INDEX.md",
52
40
  ".waypoint/state/",
53
41
  ".waypoint/context/",
54
42
  ".waypoint/scripts/",
55
- ".waypoint/track/",
56
43
  ".waypoint/plans/",
57
44
  ".waypoint/*",
58
45
  "!.waypoint/docs/",
@@ -62,16 +49,10 @@ const LEGACY_WAYPOINT_GITIGNORE_RULES = new Set([
62
49
  ]);
63
50
  const SHIPPED_SKILL_NAMES = [
64
51
  "planning",
65
- "work-tracker",
66
- "docs-sync",
67
52
  "code-guide-audit",
68
53
  "adversarial-review",
69
- "break-it-qa",
70
- "conversation-retrospective",
71
- "merge-ready-owner",
72
- "workspace-compress",
73
- "pre-pr-hygiene",
74
54
  "pr-review",
55
+ "agi-help",
75
56
  "frontend-context-interview",
76
57
  "backend-context-interview",
77
58
  "frontend-ship-audit",
@@ -79,7 +60,6 @@ const SHIPPED_SKILL_NAMES = [
79
60
  ];
80
61
  const TIMESTAMPED_WORKSPACE_SECTIONS = new Set([
81
62
  "## Active Plans",
82
- "## Active Trackers",
83
63
  "## Current State",
84
64
  "## In Progress",
85
65
  "## Next",
@@ -121,25 +101,16 @@ function configuredRootDirs(projectRoot, roots, legacyRoot, fallbackRoot) {
121
101
  function docsRootDirs(projectRoot, config) {
122
102
  return configuredRootDirs(projectRoot, config?.docs_dirs, config?.docs_dir, DEFAULT_DOCS_DIR);
123
103
  }
124
- function plansRootDirs(projectRoot, config) {
125
- return configuredRootDirs(projectRoot, config?.plans_dirs, config?.plans_dir, DEFAULT_PLANS_DIR);
126
- }
127
104
  function docsSectionHeading(projectRoot, dir) {
128
105
  const relativePath = path.relative(projectRoot, dir).split(path.sep).join("/");
129
106
  const normalizedPath = relativePath.length === 0 ? "." : relativePath;
130
107
  return normalizedPath.endsWith("/") ? normalizedPath : `${normalizedPath}/`;
131
108
  }
132
109
  function docsIndexSections(projectRoot, config) {
133
- return [
134
- ...docsRootDirs(projectRoot, config).map((dir) => ({
135
- heading: docsSectionHeading(projectRoot, dir),
136
- dir,
137
- })),
138
- ...plansRootDirs(projectRoot, config).map((dir) => ({
139
- heading: docsSectionHeading(projectRoot, dir),
140
- dir,
141
- })),
142
- ];
110
+ return docsRootDirs(projectRoot, config).map((dir) => ({
111
+ heading: docsSectionHeading(projectRoot, dir),
112
+ dir,
113
+ }));
143
114
  }
144
115
  function buildWaypointConfig(projectRoot, existingConfig, options) {
145
116
  const defaults = defaultWaypointConfig({ profile: options.profile });
@@ -149,12 +120,7 @@ function buildWaypointConfig(projectRoot, existingConfig, options) {
149
120
  coding_agent: existingConfig?.coding_agent ?? defaults.coding_agent,
150
121
  workspace_file: existingConfig?.workspace_file ?? defaults.workspace_file,
151
122
  docs_dirs: configuredRootDirs(projectRoot, existingConfig?.docs_dirs, existingConfig?.docs_dir, DEFAULT_DOCS_DIR).map((dir) => path.relative(projectRoot, dir).split(path.sep).join("/")),
152
- plans_dirs: configuredRootDirs(projectRoot, existingConfig?.plans_dirs, existingConfig?.plans_dir, DEFAULT_PLANS_DIR).map((dir) => path.relative(projectRoot, dir).split(path.sep).join("/")),
153
123
  docs_index_file: existingConfig?.docs_index_file ?? defaults.docs_index_file,
154
- features: {
155
- repo_skills: existingConfig?.features?.repo_skills ?? defaults.features?.repo_skills,
156
- docs_index: existingConfig?.features?.docs_index ?? defaults.features?.docs_index,
157
- },
158
124
  };
159
125
  }
160
126
  function ensureDir(dirPath) {
@@ -336,7 +302,6 @@ function scaffoldSkills(projectRoot) {
336
302
  }
337
303
  function scaffoldWaypointOptionalTemplates(projectRoot) {
338
304
  copyTemplateTree(templatePath(".waypoint/scripts"), path.join(projectRoot, ".waypoint/scripts"));
339
- copyTemplateTree(templatePath(".waypoint/track"), path.join(projectRoot, ".waypoint/track"));
340
305
  }
341
306
  function scaffoldOptionalCodex(projectRoot) {
342
307
  copyTemplateTree(templatePath(".codex"), path.join(projectRoot, ".codex"));
@@ -367,6 +332,13 @@ export function initRepository(projectRoot, options) {
367
332
  ".agents/skills/waypoint-explore",
368
333
  ".agents/skills/waypoint-research",
369
334
  ".agents/skills/visual-explanations",
335
+ ".agents/skills/work-tracker",
336
+ ".agents/skills/docs-sync",
337
+ ".agents/skills/break-it-qa",
338
+ ".agents/skills/conversation-retrospective",
339
+ ".agents/skills/merge-ready-owner",
340
+ ".agents/skills/workspace-compress",
341
+ ".agents/skills/pre-pr-hygiene",
370
342
  ".codex/agents/explorer.toml",
371
343
  ".codex/agents/reviewer.toml",
372
344
  ".codex/agents/architect.toml",
@@ -376,19 +348,27 @@ export function initRepository(projectRoot, options) {
376
348
  ".waypoint/MEMORY.md",
377
349
  ".waypoint/rules",
378
350
  ".waypoint/state",
351
+ ".waypoint/SOUL.md",
352
+ ".waypoint/agent-operating-manual.md",
353
+ ".waypoint/TRACKS_INDEX.md",
354
+ ".waypoint/track",
355
+ ".waypoint/context/MANIFEST.md",
356
+ ".waypoint/context/ACTIVE_PLANS.md",
357
+ ".waypoint/context/ACTIVE_TRACKERS.md",
358
+ ".waypoint/context/PULL_REQUESTS.md",
359
+ ".waypoint/context/RECENT_COMMITS.md",
360
+ ".waypoint/context/UNCOMMITTED_CHANGES.md",
361
+ ".waypoint/scripts/build-track-index.mjs",
379
362
  ]) {
380
363
  removePathIfExists(path.join(projectRoot, deprecatedPath));
381
364
  }
382
365
  writeText(path.join(projectRoot, ".waypoint/README.md"), readTemplate(".waypoint/README.md"));
383
- writeText(path.join(projectRoot, ".waypoint/SOUL.md"), readTemplate(".waypoint/SOUL.md"));
384
- writeText(path.join(projectRoot, ".waypoint/agent-operating-manual.md"), readTemplate(".waypoint/agent-operating-manual.md"));
385
366
  scaffoldWaypointOptionalTemplates(projectRoot);
386
367
  writeText(path.join(projectRoot, DEFAULT_CONFIG_PATH), renderWaypointConfig(config));
387
368
  writeIfMissing(path.join(projectRoot, DEFAULT_WORKSPACE), readTemplate("WORKSPACE.md"));
388
369
  writeIfMissing(path.join(projectRoot, DEFAULT_ACTIVE_PLANS), readTemplate(".waypoint/ACTIVE_PLANS.md"));
389
370
  ensureDir(path.join(projectRoot, DEFAULT_DOCS_DIR));
390
371
  ensureDir(path.join(projectRoot, DEFAULT_PLANS_DIR));
391
- ensureDir(path.join(projectRoot, DEFAULT_TRACK_DIR));
392
372
  writeIfMissing(path.join(projectRoot, ".waypoint/docs/README.md"), readTemplate(".waypoint/docs/README.md"));
393
373
  writeIfMissing(path.join(projectRoot, ".waypoint/docs/code-guide.md"), readTemplate(".waypoint/docs/code-guide.md"));
394
374
  writeIfMissing(path.join(projectRoot, ".waypoint/plans/README.md"), readTemplate(".waypoint/plans/README.md"));
@@ -398,16 +378,14 @@ export function initRepository(projectRoot, options) {
398
378
  appendGitignoreSnippet(projectRoot);
399
379
  const docsIndexPath = path.join(projectRoot, config.docs_index_file ?? DEFAULT_DOCS_INDEX);
400
380
  const docsIndex = renderDocsIndex(projectRoot, docsIndexSections(projectRoot, config));
401
- const tracksIndex = renderTracksIndex(projectRoot, path.join(projectRoot, DEFAULT_TRACK_DIR));
402
381
  writeText(docsIndexPath, `${docsIndex.content}\n`);
403
- writeText(path.join(projectRoot, DEFAULT_TRACKS_INDEX), `${tracksIndex.content}\n`);
404
382
  return [
405
383
  "Initialized Waypoint scaffold",
406
384
  "Installed managed AGENTS block",
407
- "Created .waypoint/WORKSPACE.md, .waypoint/ACTIVE_PLANS.md, .waypoint/docs/, .waypoint/plans/, and .waypoint/track/ scaffold",
385
+ "Created .waypoint/WORKSPACE.md, .waypoint/ACTIVE_PLANS.md, .waypoint/docs/, and .waypoint/plans/ scaffold",
408
386
  "Installed repo-local Waypoint skills",
409
387
  "Installed coding/reviewer agents and project Codex config",
410
- "Generated .waypoint/DOCS_INDEX.md and .waypoint/TRACKS_INDEX.md",
388
+ "Generated .waypoint/DOCS_INDEX.md",
411
389
  ];
412
390
  }
413
391
  export function loadWaypointConfig(projectRoot) {
@@ -488,7 +466,6 @@ export function doctorRepository(projectRoot) {
488
466
  for (const section of [
489
467
  "## Active Goal",
490
468
  "## Active Plans",
491
- "## Active Trackers",
492
469
  "## Current State",
493
470
  "## In Progress",
494
471
  "## Next",
@@ -517,11 +494,8 @@ export function doctorRepository(projectRoot) {
517
494
  }
518
495
  }
519
496
  for (const requiredFile of [
520
- path.join(projectRoot, ".waypoint", "SOUL.md"),
521
- path.join(projectRoot, ".waypoint", "agent-operating-manual.md"),
522
497
  path.join(projectRoot, ".waypoint", "scripts", "prepare-context.mjs"),
523
498
  path.join(projectRoot, ".waypoint", "scripts", "build-docs-index.mjs"),
524
- path.join(projectRoot, ".waypoint", "scripts", "build-track-index.mjs"),
525
499
  ]) {
526
500
  if (!existsSync(requiredFile)) {
527
501
  findings.push({
@@ -535,11 +509,7 @@ export function doctorRepository(projectRoot) {
535
509
  }
536
510
  const docsIndexPath = path.join(projectRoot, config.docs_index_file ?? DEFAULT_DOCS_INDEX);
537
511
  const configuredDocsDirs = docsRootDirs(projectRoot, config);
538
- const configuredPlansDirs = plansRootDirs(projectRoot, config);
539
512
  const docsIndex = renderDocsIndex(projectRoot, docsIndexSections(projectRoot, config));
540
- const trackDir = path.join(projectRoot, DEFAULT_TRACK_DIR);
541
- const tracksIndexPath = path.join(projectRoot, DEFAULT_TRACKS_INDEX);
542
- const tracksIndex = renderTracksIndex(projectRoot, trackDir);
543
513
  for (const docsDir of configuredDocsDirs) {
544
514
  if (existsSync(docsDir)) {
545
515
  continue;
@@ -552,15 +522,13 @@ export function doctorRepository(projectRoot) {
552
522
  paths: [docsDir],
553
523
  });
554
524
  }
555
- for (const plansDir of configuredPlansDirs) {
556
- if (existsSync(plansDir)) {
557
- continue;
558
- }
525
+ const plansDir = path.join(projectRoot, DEFAULT_PLANS_DIR);
526
+ if (!existsSync(plansDir)) {
559
527
  findings.push({
560
528
  severity: "error",
561
529
  category: "docs",
562
- message: `${docsSectionHeading(projectRoot, plansDir)} directory is missing.`,
563
- remediation: "Create the configured plans directory or update `.waypoint/config.toml`.",
530
+ message: ".waypoint/plans/ directory is missing.",
531
+ remediation: "Run `waypoint init` to restore the plans directory.",
564
532
  paths: [plansDir],
565
533
  });
566
534
  }
@@ -578,7 +546,7 @@ export function doctorRepository(projectRoot) {
578
546
  severity: "warn",
579
547
  category: "docs",
580
548
  message: ".waypoint/DOCS_INDEX.md is missing.",
581
- remediation: "Run `waypoint sync` to generate the docs/plans index.",
549
+ remediation: "Run `waypoint sync` to generate the docs index.",
582
550
  paths: [docsIndexPath],
583
551
  });
584
552
  }
@@ -587,46 +555,10 @@ export function doctorRepository(projectRoot) {
587
555
  severity: "warn",
588
556
  category: "docs",
589
557
  message: ".waypoint/DOCS_INDEX.md is stale.",
590
- remediation: "Run `waypoint sync` to rebuild the docs/plans index.",
558
+ remediation: "Run `waypoint sync` to rebuild the docs index.",
591
559
  paths: [docsIndexPath],
592
560
  });
593
561
  }
594
- if (!existsSync(trackDir)) {
595
- findings.push({
596
- severity: "error",
597
- category: "track",
598
- message: ".waypoint/track/ directory is missing.",
599
- remediation: "Run `waypoint init` to scaffold track files.",
600
- paths: [trackDir],
601
- });
602
- }
603
- for (const relPath of tracksIndex.invalidTracks) {
604
- findings.push({
605
- severity: "warn",
606
- category: "track",
607
- message: `Tracker is missing valid frontmatter or status: ${relPath}`,
608
- remediation: "Add `summary`, `last_updated`, `status`, and `read_when` frontmatter using the track template.",
609
- paths: [path.join(projectRoot, relPath)],
610
- });
611
- }
612
- if (!existsSync(tracksIndexPath)) {
613
- findings.push({
614
- severity: "warn",
615
- category: "track",
616
- message: ".waypoint/TRACKS_INDEX.md is missing.",
617
- remediation: "Run `waypoint sync` to generate the tracks index.",
618
- paths: [tracksIndexPath],
619
- });
620
- }
621
- else if (readFileSync(tracksIndexPath, "utf8").trimEnd() !== tracksIndex.content.trimEnd()) {
622
- findings.push({
623
- severity: "warn",
624
- category: "track",
625
- message: ".waypoint/TRACKS_INDEX.md is stale.",
626
- remediation: "Run `waypoint sync` to rebuild the tracks index.",
627
- paths: [tracksIndexPath],
628
- });
629
- }
630
562
  const activePlansPath = path.join(projectRoot, DEFAULT_ACTIVE_PLANS);
631
563
  if (!existsSync(activePlansPath)) {
632
564
  findings.push({
@@ -646,17 +578,6 @@ export function doctorRepository(projectRoot) {
646
578
  paths: [workspacePath, activePlansPath],
647
579
  });
648
580
  }
649
- if (existsSync(workspacePath) &&
650
- tracksIndex.activeTrackPaths.length > 0 &&
651
- !tracksIndex.activeTrackPaths.some((trackPath) => readFileSync(workspacePath, "utf8").includes(trackPath))) {
652
- findings.push({
653
- severity: "warn",
654
- category: "track",
655
- message: "Workspace does not reference any active tracker file.",
656
- remediation: "Add the active `.waypoint/track/*.md` file paths under `## Active Trackers` in `.waypoint/WORKSPACE.md`.",
657
- paths: [workspacePath, ...tracksIndex.activeTrackPaths.map((trackPath) => path.join(projectRoot, trackPath))],
658
- });
659
- }
660
581
  for (const skillName of SHIPPED_SKILL_NAMES) {
661
582
  const skillPath = path.join(projectRoot, ".agents/skills", skillName, "SKILL.md");
662
583
  if (!existsSync(skillPath)) {
@@ -696,10 +617,6 @@ export function syncRepository(projectRoot) {
696
617
  const config = loadWaypointConfig(projectRoot);
697
618
  const docsIndexPath = path.join(projectRoot, config.docs_index_file ?? DEFAULT_DOCS_INDEX);
698
619
  const docsIndex = renderDocsIndex(projectRoot, docsIndexSections(projectRoot, config));
699
- const trackDir = path.join(projectRoot, DEFAULT_TRACK_DIR);
700
- const tracksIndexPath = path.join(projectRoot, DEFAULT_TRACKS_INDEX);
701
- const tracksIndex = renderTracksIndex(projectRoot, trackDir);
702
620
  writeText(docsIndexPath, `${docsIndex.content}\n`);
703
- writeText(tracksIndexPath, `${tracksIndex.content}\n`);
704
- return ["Rebuilt .waypoint/DOCS_INDEX.md", "Rebuilt .waypoint/TRACKS_INDEX.md"];
621
+ return ["Rebuilt .waypoint/DOCS_INDEX.md"];
705
622
  }
@@ -95,7 +95,7 @@ export function renderDocsIndex(projectRoot, sections) {
95
95
  const lines = [
96
96
  "# Docs Index",
97
97
  "",
98
- "Auto-generated by `waypoint sync` / `waypoint doctor`. Read matching docs and plans before working on a task.",
98
+ "Auto-generated by `waypoint sync` / `waypoint doctor`. Read matching docs before working on a task.",
99
99
  "",
100
100
  ];
101
101
  const invalidDocs = [];
@@ -33,12 +33,7 @@ export function defaultWaypointConfig(options) {
33
33
  coding_agent: "codex",
34
34
  workspace_file: ".waypoint/WORKSPACE.md",
35
35
  docs_dirs: [".waypoint/docs"],
36
- plans_dirs: [".waypoint/plans"],
37
36
  docs_index_file: ".waypoint/DOCS_INDEX.md",
38
- features: {
39
- repo_skills: true,
40
- docs_index: true,
41
- },
42
37
  };
43
38
  }
44
39
  export function renderWaypointConfig(config) {
@@ -48,12 +43,7 @@ export function renderWaypointConfig(config) {
48
43
  coding_agent: config.coding_agent,
49
44
  workspace_file: config.workspace_file,
50
45
  docs_dirs: config.docs_dirs,
51
- plans_dirs: config.plans_dirs,
52
46
  docs_index_file: config.docs_index_file,
53
- features: config.features ? {
54
- repo_skills: config.features.repo_skills,
55
- docs_index: config.features.docs_index,
56
- } : undefined,
57
47
  };
58
48
  return TOML.stringify(renderedConfig);
59
49
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "waypoint-codex",
3
- "version": "0.20.0",
3
+ "version": "1.0.1",
4
4
  "description": "Make Codex better by default with stronger planning, code quality, reviews, tracking, and repo guidance.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -144,7 +144,7 @@ Examples of relevant files:
144
144
  - core implementation files
145
145
  - architecture docs
146
146
  - plans
147
- - tracker files
147
+ - active plan or workspace files
148
148
  - config files
149
149
  - failing or partial implementations
150
150
  - screenshots or exported artifacts when available through the current tool surface
@@ -11,7 +11,7 @@ This skill owns one job: inspect the specific code the user points at, map it ag
11
11
 
12
12
  ## When Not To Use This Skill
13
13
 
14
- - Skip it for broad ship-readiness review; use `pre-pr-hygiene` or a ship-audit workflow for that.
14
+ - Skip it for broad ship-readiness review; use a ship-audit workflow for that.
15
15
  - Skip it for generic bug finding or regression review that is not specifically about the coding guide.
16
16
  - Skip it for active PR comment triage; use `pr-review` for that loop.
17
17
  - Skip it for repo-wide cleanup unless the user explicitly asked for a repo-wide coding-guide audit.
@@ -52,10 +52,6 @@ Skip rules that genuinely do not apply, but say that you skipped them.
52
52
  - Do not drift into generic architecture advice, repo-wide cleanup, docs sync, or PR readiness unless the finding is directly required by the guide.
53
53
  - If you notice issues outside scope, mention them only if they are severe enough that ignoring them would mislead the user about this audit.
54
54
 
55
- This skill is narrower than `pre-pr-hygiene`. Use that other skill for broader ship-readiness.
56
-
57
- If this audit produces a large remediation campaign, create or update a tracker under `.waypoint/track/` before switching into implementation so the fix list does not live only in chat.
58
-
59
55
  ## Step 4: Verify Evidence
60
56
 
61
57
  Ground each finding in the actual code.
@@ -25,13 +25,12 @@ Good plans prove you understand the problem. Size matches complexity — a renam
25
25
 
26
26
  Before planning:
27
27
 
28
- 1. Read `.waypoint/SOUL.md`
29
- 2. Read `.waypoint/agent-operating-manual.md`
30
- 3. Read `.waypoint/WORKSPACE.md`
31
- 4. Read `.waypoint/ACTIVE_PLANS.md`
32
- 5. Read `.waypoint/context/MANIFEST.md`
33
- 6. Read every file listed in the manifest
34
- 7. Read the routed docs relevant to the task
28
+ 1. Read `AGENTS.md`
29
+ 2. Read `.waypoint/WORKSPACE.md`
30
+ 3. Read `.waypoint/ACTIVE_PLANS.md`
31
+ 4. Read `.waypoint/DOCS_INDEX.md`
32
+ 5. Read `.waypoint/context/SNAPSHOT.md`
33
+ 6. Read the routed docs relevant to the task
35
34
 
36
35
  ## Output Location
37
36
 
@@ -40,12 +39,9 @@ The plan belongs in the repo, not only in chat.
40
39
  - Write or update a durable plan doc under `.waypoint/plans/`.
41
40
  - Choose the smallest routed location that matches the work, such as a project plan, implementation plan, or focused design note.
42
41
  - If a relevant plan doc already exists, update it instead of creating a competing one.
43
- - Make sure the doc remains discoverable through the routed docs layer.
44
42
  - Update `.waypoint/ACTIVE_PLANS.md` when this plan becomes the approved active plan or when its current phase changes.
45
43
  - In chat, return only a concise summary plus the path to the plan doc.
46
44
 
47
- If the planned implementation will be large, multi-step, or likely to span multiple sessions, also create or update a tracker under `.waypoint/track/` and link it from `WORKSPACE.md` before implementation begins.
48
-
49
45
  ## The Core Loop
50
46
 
51
47
  ```
@@ -10,7 +10,6 @@ Use this skill to drive the PR through review instead of treating review as a on
10
10
  ## When Not To Use This Skill
11
11
 
12
12
  - Skip it before a PR has active review or automated review in flight.
13
- - Skip it for local pre-push hygiene; use `pre-pr-hygiene` for that workflow.
14
13
  - Skip it for the repo-internal closeout loop on an unpushed slice; use the normal review workflows instead.
15
14
 
16
15
  ## Step 1: Wait For Review To Settle
@@ -3,11 +3,13 @@ model_reasoning_effort = "high"
3
3
  sandbox_mode = "read-only"
4
4
  developer_instructions = """
5
5
  Read these files in order before doing anything else:
6
- 1. .waypoint/SOUL.md
7
- 2. .waypoint/agent-operating-manual.md
8
- 3. .waypoint/WORKSPACE.md
9
- 4. .waypoint/context/MANIFEST.md
10
- 5. every file listed in that manifest
6
+ 1. AGENTS.md
7
+ 2. .waypoint/WORKSPACE.md
8
+ 3. .waypoint/ACTIVE_PLANS.md
9
+ 4. .waypoint/docs/code-guide.md
10
+ 5. .waypoint/DOCS_INDEX.md
11
+ 6. .waypoint/context/SNAPSHOT.md
12
+ 7. .waypoint/context/RECENT_THREAD.md
11
13
 
12
14
  After reading them, follow these operating instructions:
13
15
 
@@ -3,11 +3,13 @@ model_reasoning_effort = "high"
3
3
  sandbox_mode = "read-only"
4
4
  developer_instructions = """
5
5
  Read these files in order before doing anything else:
6
- 1. .waypoint/SOUL.md
7
- 2. .waypoint/agent-operating-manual.md
8
- 3. .waypoint/WORKSPACE.md
9
- 4. .waypoint/context/MANIFEST.md
10
- 5. every file listed in that manifest
6
+ 1. AGENTS.md
7
+ 2. .waypoint/WORKSPACE.md
8
+ 3. .waypoint/ACTIVE_PLANS.md
9
+ 4. .waypoint/docs/code-guide.md
10
+ 5. .waypoint/DOCS_INDEX.md
11
+ 6. .waypoint/context/SNAPSHOT.md
12
+ 7. .waypoint/context/RECENT_THREAD.md
11
13
 
12
14
  After reading them, follow these operating instructions:
13
15
 
@@ -3,11 +3,13 @@ model_reasoning_effort = "high"
3
3
  sandbox_mode = "read-only"
4
4
  developer_instructions = """
5
5
  Read these files in order before doing anything else:
6
- 1. .waypoint/SOUL.md
7
- 2. .waypoint/agent-operating-manual.md
8
- 3. .waypoint/WORKSPACE.md
9
- 4. .waypoint/context/MANIFEST.md
10
- 5. every file listed in that manifest
6
+ 1. AGENTS.md
7
+ 2. .waypoint/WORKSPACE.md
8
+ 3. .waypoint/ACTIVE_PLANS.md
9
+ 4. .waypoint/docs/code-guide.md
10
+ 5. .waypoint/DOCS_INDEX.md
11
+ 6. .waypoint/context/SNAPSHOT.md
12
+ 7. .waypoint/context/RECENT_THREAD.md
11
13
 
12
14
  After reading them, follow these operating instructions:
13
15