Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 6 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,16 @@ jobs:
- name: Check out repository
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
- name: Set up Bun
uses: oven-sh/setup-bun@v2
with:
node-version: 22
cache: npm
bun-version: 1.3.14

- name: Install dependencies
run: npm ci
run: bun install --frozen-lockfile

- name: Typecheck
run: npm run typecheck
run: bun run typecheck

- name: Check package contents
run: npm pack --dry-run
run: bun pm pack --dry-run
6 changes: 3 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ Guidance for AI coding agents working in this repository.

## Development commands

- Install dependencies: `npm install`
- Type-check the project: `npm run typecheck`
- Install dependencies: `bun install`
- Type-check the project: `bun run typecheck`
- Test the extension in a local pi session: `pi -e ./extensions/git-diff-sidebar.ts`

Run `npm run typecheck` before considering code changes complete.
Run `bun run typecheck` before considering code changes complete.

## Repository conventions

Expand Down
10 changes: 6 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ Thanks for helping improve `forjd-pi`.

## Development setup

This repository uses Bun for local development and CI. Pi extensions should remain Node-compatible at runtime, so avoid Bun-only APIs in extension code.

```bash
npm install
npm run typecheck
bun install
bun run typecheck
```

To test the package set in pi without installing it globally:
Expand All @@ -25,8 +27,8 @@ pi -e ./extensions/git-diff-sidebar.ts

- Keep extensions small and focused.
- Prefer passive UI that does not interrupt the main editor unless a command explicitly asks for interaction.
- Run `npm run typecheck` before opening a PR.
- GitHub Actions runs `npm ci`, `npm run typecheck`, and `npm pack --dry-run` on pushes and pull requests targeting `main`.
- Run `bun run typecheck` before opening a PR.
- GitHub Actions runs `bun install --frozen-lockfile`, `bun run typecheck`, and `bun pm pack --dry-run` on pushes and pull requests targeting `main`.
- Update the README when adding commands, configuration, package contents, or visible UI changes.

## Security
Expand Down
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ This package bundles the Forjd Git diff sidebar plus three cloned pi packages:
│ 7 new │
│ +2857 -0 7 files • just now │
├────────────────────────────────────┤
│ ? package-lock.json +2016 -0 │
│ ? bun.lock +2016 -0 │
│ ? extensions/git-diff... +732 -0 │
│ ? README.md +51 -0 │
│ ? package.json +34 -0 │
Expand Down Expand Up @@ -97,13 +97,15 @@ The pi manifest is declared in `package.json` and loads extension, skill, and pr

## Development

This repository uses Bun for local development and CI. Pi still loads extensions with a Node-compatible runtime, so extension code should keep using Node-compatible APIs and avoid Bun-only runtime globals.

```bash
npm install
npm run typecheck
npm pack --dry-run
bun install
bun run typecheck
bun pm pack --dry-run
```

GitHub Actions runs `npm ci`, `npm run typecheck`, and `npm pack --dry-run` on pushes and pull requests targeting `main`. The workflow can also be run manually from the Actions tab.
GitHub Actions runs `bun install --frozen-lockfile`, `bun run typecheck`, and `bun pm pack --dry-run` on pushes and pull requests targeting `main`. The workflow can also be run manually from the Actions tab.

## Roadmap

Expand Down
Loading
Loading