@joynt/foundry 0.1.52 → 0.1.54
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.
- package/LICENSE +21 -0
- package/README.md +70 -0
- package/dist/commands/init.js +2 -2
- package/dist/commands/init.js.map +1 -1
- package/package.json +28 -2
- package/templates/foundry.yml +20 -6
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Joynt Shops
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Joynt Foundry
|
|
2
|
+
|
|
3
|
+
Foundry turns a GitHub Issue into a verified pull request. Comment `@foundry go` on an issue and Foundry claims it, runs a coding agent in an isolated git worktree, runs your verify commands, opens a PR into your integration branch, and stands up a preview if you have one. Humans review on GitHub. Three comments are the whole control surface: `@foundry go`, `@foundry restart`, `@foundry stop`. Every other comment is context the agent reads; labels show status.
|
|
4
|
+
|
|
5
|
+
Foundry is a **GitHub Action**. There is no server to run and no machine to keep awake. Each GitHub event that matters starts a job, the job performs one transition of the task's state machine, and state lives on GitHub: in labels, a structured claim comment, the PR, and the preview comment.
|
|
6
|
+
|
|
7
|
+
Foundry is the orchestration layer, not the agent. It runs Claude Code, aider, or any CLI you configure, and bills your own Claude subscription through `CLAUDE_CODE_OAUTH_TOKEN`.
|
|
8
|
+
|
|
9
|
+
## What this package is for
|
|
10
|
+
|
|
11
|
+
This package is the Foundry CLI. The Action itself is referenced from your workflow as `joyntshops/foundry@v0` and builds inside the job, so nothing needs to be installed to run Foundry. The CLI is for:
|
|
12
|
+
|
|
13
|
+
- **Setup**: `init` scaffolds a repository; `setup-bot` creates the GitHub App that gives Foundry an identity.
|
|
14
|
+
- **Operating on a task** from any checkout: `reset`, `preview up` / `down` / `status`.
|
|
15
|
+
- **The integration branch**: `review`, `release`, `sync-integration`.
|
|
16
|
+
|
|
17
|
+
It needs Node 18 or later, git, and `gh` authenticated with `gh auth login`.
|
|
18
|
+
|
|
19
|
+
## Quick start
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @joynt/foundry init
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
1. **Scaffold.** From a clone, `init` writes `.joynt-foundry.yml`, `.github/workflows/foundry.yml`, and an issue template, and creates the `state:*` and `mode:*` labels. Set `branches:` to the branches you already deploy from; nothing is renamed.
|
|
26
|
+
2. **Secrets.** Add `CLAUDE_CODE_OAUTH_TOKEN` from `claude setup-token`. Run `npx @joynt/foundry setup-bot` and add the two App secrets it prints; without the App, PRs the agent opens get no CI.
|
|
27
|
+
3. **Push** to the default branch. Foundry listens from there.
|
|
28
|
+
4. **Go.** Open an issue, comment `@foundry go`, and watch Actions → Foundry.
|
|
29
|
+
|
|
30
|
+
The full walkthrough is in [Onboarding](https://github.com/joyntshops/foundry/blob/main/docs/foundry/onboarding.md).
|
|
31
|
+
|
|
32
|
+
## The loop
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
human comments @foundry go on an issue
|
|
36
|
+
→ claim (state:in-progress + claim comment)
|
|
37
|
+
→ worktree from origin/<integration branch>
|
|
38
|
+
→ agent runs; transcript is the job log
|
|
39
|
+
→ the agent's typed report: done · needs input · plan ready · blocked
|
|
40
|
+
→ verify (lint, typecheck, build, test); no PR until green
|
|
41
|
+
→ PR into integration · state:ready-for-human-review · preview up
|
|
42
|
+
human reviews; @foundry go <feedback> or "request changes" sends the agent back to the branch
|
|
43
|
+
approve → Foundry rebases, waits for checks, merges → state:done · preview down
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Install globally
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
npm install -g @joynt/foundry
|
|
50
|
+
foundry --version
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Merges to `main` publish a new patch version automatically. The CLI version and the Action ref a workflow pins can differ; nothing depends on them matching.
|
|
54
|
+
|
|
55
|
+
## Documentation
|
|
56
|
+
|
|
57
|
+
- [Overview](https://github.com/joyntshops/foundry/blob/main/docs/foundry/overview.md): what Foundry does, what it does not, and the security model
|
|
58
|
+
- [Installation](https://github.com/joyntshops/foundry/blob/main/docs/foundry/installation.md) · [Onboarding](https://github.com/joyntshops/foundry/blob/main/docs/foundry/onboarding.md)
|
|
59
|
+
- [Writing a task](https://github.com/joyntshops/foundry/blob/main/docs/foundry/writing-a-task.md) · [Workflows](https://github.com/joyntshops/foundry/blob/main/docs/foundry/workflows.md)
|
|
60
|
+
- [Configuration](https://github.com/joyntshops/foundry/blob/main/docs/foundry/config-reference.md) · [CLI](https://github.com/joyntshops/foundry/blob/main/docs/foundry/cli-reference.md) · [GitHub Action](https://github.com/joyntshops/foundry/blob/main/docs/foundry/github-action.md)
|
|
61
|
+
- [Agent backends](https://github.com/joyntshops/foundry/blob/main/docs/foundry/agent-backends.md) · [Preview environments](https://github.com/joyntshops/foundry/blob/main/docs/foundry/preview-environments.md) · [Troubleshooting](https://github.com/joyntshops/foundry/blob/main/docs/foundry/troubleshooting.md)
|
|
62
|
+
- [Releasing](https://github.com/joyntshops/foundry/blob/main/docs/foundry/releasing.md): how versions and tags are produced
|
|
63
|
+
|
|
64
|
+
A public demo of a repository wired up end to end: [joyntshops/foundry-demo](https://github.com/joyntshops/foundry-demo).
|
|
65
|
+
|
|
66
|
+
Source, issues, and contributing: [github.com/joyntshops/foundry](https://github.com/joyntshops/foundry).
|
|
67
|
+
|
|
68
|
+
## License
|
|
69
|
+
|
|
70
|
+
MIT.
|
package/dist/commands/init.js
CHANGED
|
@@ -259,8 +259,8 @@ async function runInit(opts) {
|
|
|
259
259
|
log.info('');
|
|
260
260
|
log.info('Next steps:');
|
|
261
261
|
log.info(` 1. Review ${config_js_1.CONFIG_FILENAME}: branches, verify commands, the model`);
|
|
262
|
-
log.info(' 2. Add the
|
|
263
|
-
log.info(' `foundry setup-bot` for
|
|
262
|
+
log.info(' 2. Add the secret CLAUDE_CODE_OAUTH_TOKEN (claude setup-token), then install the');
|
|
263
|
+
log.info(' public Foundry App on the repo, or run `foundry setup-bot` for a self-owned App');
|
|
264
264
|
log.info(' 3. Commit and push; the workflow listens once it is on the default branch');
|
|
265
265
|
log.info(' 4. Open an issue and comment `@foundry go`');
|
|
266
266
|
log.info('');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@joynt/foundry",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.54",
|
|
4
4
|
"description": "Developer automation: GitHub Issues → agent sessions → validated PRs",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"github",
|
|
7
|
+
"github-actions",
|
|
8
|
+
"github-action",
|
|
9
|
+
"github-issues",
|
|
10
|
+
"pull-request",
|
|
11
|
+
"coding-agent",
|
|
12
|
+
"ai-agent",
|
|
13
|
+
"agent",
|
|
14
|
+
"claude",
|
|
15
|
+
"claude-code",
|
|
16
|
+
"automation",
|
|
17
|
+
"developer-tools",
|
|
18
|
+
"devops",
|
|
19
|
+
"workflow",
|
|
20
|
+
"code-review",
|
|
21
|
+
"preview-environment",
|
|
22
|
+
"orchestration"
|
|
23
|
+
],
|
|
24
|
+
"homepage": "https://github.com/joyntshops/foundry#readme",
|
|
25
|
+
"bugs": {
|
|
26
|
+
"url": "https://github.com/joyntshops/foundry/issues"
|
|
27
|
+
},
|
|
28
|
+
"author": "Joynt Shops",
|
|
5
29
|
"license": "MIT",
|
|
6
30
|
"bin": {
|
|
7
31
|
"foundry": "dist/cli.js"
|
|
@@ -10,7 +34,9 @@
|
|
|
10
34
|
"types": "./dist/index.d.ts",
|
|
11
35
|
"files": [
|
|
12
36
|
"dist",
|
|
13
|
-
"templates"
|
|
37
|
+
"templates",
|
|
38
|
+
"README.md",
|
|
39
|
+
"LICENSE"
|
|
14
40
|
],
|
|
15
41
|
"scripts": {
|
|
16
42
|
"build": "tsc",
|
package/templates/foundry.yml
CHANGED
|
@@ -12,10 +12,14 @@
|
|
|
12
12
|
#
|
|
13
13
|
# Secrets (repository or organization level):
|
|
14
14
|
# CLAUDE_CODE_OAUTH_TOKEN required. From `claude setup-token`; bills that Claude plan.
|
|
15
|
-
# FOUNDRY_APP_ID, FOUNDRY_APP_PRIVATE_KEY a GitHub App
|
|
16
|
-
#
|
|
17
|
-
#
|
|
18
|
-
#
|
|
15
|
+
# FOUNDRY_APP_ID, FOUNDRY_APP_PRIVATE_KEY only for a self-owned GitHub App (`foundry setup-bot`).
|
|
16
|
+
#
|
|
17
|
+
# Identity: with the public Foundry App installed on this repo and no FOUNDRY_APP_*
|
|
18
|
+
# secrets, the job exchanges its OIDC token (`id-token: write` below) at the
|
|
19
|
+
# Foundry broker for a token scoped to this repo; comments, PRs and commits carry
|
|
20
|
+
# the App's name and its PRs trigger the repo's other workflows. With the secrets,
|
|
21
|
+
# the self-owned App is used instead. With neither, the job's built-in token is
|
|
22
|
+
# used and agent PRs get no CI.
|
|
19
23
|
name: Foundry
|
|
20
24
|
|
|
21
25
|
on:
|
|
@@ -55,6 +59,7 @@ permissions:
|
|
|
55
59
|
checks: write # verification results as a check run on the PR
|
|
56
60
|
actions: write # workflow_dispatch to itself; preview up/down
|
|
57
61
|
deployments: write # GitHub Deployment records for previews
|
|
62
|
+
id-token: write # OIDC token the Foundry broker exchanges for the public App's token
|
|
58
63
|
|
|
59
64
|
jobs:
|
|
60
65
|
foundry:
|
|
@@ -90,6 +95,7 @@ jobs:
|
|
|
90
95
|
FOUNDRY_APP_ID: ${{ secrets.FOUNDRY_APP_ID }} # secrets aren't readable in step `if:`
|
|
91
96
|
|
|
92
97
|
steps:
|
|
98
|
+
# Self-owned App: mint from the secrets.
|
|
93
99
|
- name: Mint GitHub App token
|
|
94
100
|
id: app
|
|
95
101
|
if: env.FOUNDRY_APP_ID != ''
|
|
@@ -98,17 +104,25 @@ jobs:
|
|
|
98
104
|
app-id: ${{ secrets.FOUNDRY_APP_ID }}
|
|
99
105
|
private-key: ${{ secrets.FOUNDRY_APP_PRIVATE_KEY }}
|
|
100
106
|
|
|
107
|
+
# Public Foundry App: exchange the job's OIDC token at the broker. Warns
|
|
108
|
+
# and leaves its outputs empty when the App is not installed here.
|
|
109
|
+
- name: Token from the Foundry broker
|
|
110
|
+
id: broker
|
|
111
|
+
if: env.FOUNDRY_APP_ID == ''
|
|
112
|
+
uses: joyntshops/foundry/broker-token@v0
|
|
113
|
+
|
|
101
114
|
# Full history so the integration branch exists for worktrees and diffs.
|
|
102
115
|
- uses: actions/checkout@v4
|
|
103
116
|
with:
|
|
104
|
-
token: ${{ steps.app.outputs.token || github.token }}
|
|
117
|
+
token: ${{ steps.app.outputs.token || steps.broker.outputs.token || github.token }}
|
|
105
118
|
fetch-depth: 0
|
|
106
119
|
|
|
107
120
|
- name: Foundry
|
|
108
121
|
id: foundry
|
|
109
122
|
uses: joyntshops/foundry@v0
|
|
110
123
|
with:
|
|
111
|
-
github-token: ${{ steps.app.outputs.token || github.token }}
|
|
124
|
+
github-token: ${{ steps.app.outputs.token || steps.broker.outputs.token || github.token }}
|
|
125
|
+
app-slug: ${{ steps.app.outputs.app-slug || steps.broker.outputs.app-slug }}
|
|
112
126
|
claude-code-oauth-token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
|
|
113
127
|
|
|
114
128
|
- name: Keep the agent transcript
|