feat(compound-engineering): add ce-sync wrapper#636
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6c9cd85fbb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| } | ||
|
|
||
| const proc = Bun.spawn(["bun", ...childArgs], { | ||
| cwd: repoRoot, |
There was a problem hiding this comment.
Run installer from caller CWD for relative --output
Spawning the installer with cwd: repoRoot changes how relative paths are resolved inside install, so ce-sync --output ./some-dir writes under the package repo (or fails if that location is not writable) instead of the directory where the user invoked ce-sync. This is a functional regression for common refresh/export workflows that use project-relative output paths; the wrapper should preserve the caller’s working directory when invoking src/index.ts.
Useful? React with 👍 / 👎.
| | `/ce-test-browser` | Run browser tests on PR-affected pages | | ||
| | `/ce-test-xcode` | Build and test iOS apps on simulator using XcodeBuildMCP | | ||
| | `/ce-onboarding` | Generate `ONBOARDING.md` to help new contributors understand the codebase | | ||
| | `/ce-sync` | Refresh compound-engineering skills across targets using the bundled installer | |
There was a problem hiding this comment.
why is this listed as a skill?
|
Thanks for putting this together. Going to pass on this one. A few reasons:
If there’s a specific workflow where the existing command is getting in your way, happy to hear more about it... that might change the calculus for me. Appreciate the contribution either waay |
|
Sorry, this should have gone to my fork, not upstream. My bad. |
…nces index A real nugget-demographics plan HTML rendered its Sources & References section as 9 bare code paths, 4 doc paths, 2 GitHub PR mentions, and a Linear ticket — none hyperlinked. The reader has to copy-paste every entry into a browser or IDE to use it. Bare text references are the HTML format's biggest unforced UX miss: a doc reading like a reference index loses the format's main affordance over markdown. New Format-principles rule: hyperlink the reference index. Resolves the repo's GitHub URL once at compose time from `git remote get-url origin` and applies linking to three reference shapes: - Repo-relative code/doc paths → `<repo-url>/blob/main/<path>` - Named GitHub PRs/issues (`PR #636`, `issue #1048`) → `<repo-url>/pull/636` or `<repo-url>/issues/1048` - Named external trackers (Linear, Jira) → linked only when the workspace URL is established in loaded context; otherwise text Two constraints prevent the rule from going crazy: - Do not invent URLs. If origin isn't GitHub or the tracker workspace isn't established, leave entries as text. A broken or guessed link is worse than no link. - Scope: reference index only. Inline <code> mentions of paths or PRs in paragraph prose stay as code — linking every mention clutters. One new test pins the principle with five assertions: rule presence, the `git remote get-url origin` resolution, the `blob/main` URL shape, the URL-invention prohibition, and the reference-index-only scope.
…nces index A real nugget-demographics plan HTML rendered its Sources & References section as 9 bare code paths, 4 doc paths, 2 GitHub PR mentions, and a Linear ticket — none hyperlinked. The reader has to copy-paste every entry into a browser or IDE to use it. Bare text references are the HTML format's biggest unforced UX miss: a doc reading like a reference index loses the format's main affordance over markdown. New Format-principles rule: hyperlink the reference index. Resolves the repo's GitHub URL once at compose time from `git remote get-url origin` and applies linking to three reference shapes: - Repo-relative code/doc paths → `<repo-url>/blob/main/<path>` - Named GitHub PRs/issues (`PR #636`, `issue #1048`) → `<repo-url>/pull/636` or `<repo-url>/issues/1048` - Named external trackers (Linear, Jira) → linked only when the workspace URL is established in loaded context; otherwise text Two constraints prevent the rule from going crazy: - Do not invent URLs. If origin isn't GitHub or the tracker workspace isn't established, leave entries as text. A broken or guessed link is worse than no link. - Scope: reference index only. Inline <code> mentions of paths or PRs in paragraph prose stay as code — linking every mention clutters. One new test pins the principle with five assertions: rule presence, the `git remote get-url origin` resolution, the `blob/main` URL shape, the URL-invention prohibition, and the reference-index-only scope.
Summary
ce-syncwrapper that reuses the existing installer for repeatable exports and refreshes.--branchforwarding.Verification
bun test tests/cli.test.tsbun testbun run release:validateNotes
kesslerio/compound-engineering-plugin.