Add local projects, set Jira rules, copy config files. The admin is an editor — it does not install Seal into your repos by itself.
D:\BertaSeal\website\admin.htmlnpx serve D:\BertaSeal\website -p 8765 then open http://localhost:8765/admin.html
programmes.json (which folders = which Jira project)policies.json (always / ask / never for Jira)seal init in your reposnpm run dev)Quick start
File → D:\BertaSeal\website\admin.html in your browser.
Fill in the table at the bottom of the page:
| Column | Example (Parental) | Meaning |
|---|---|---|
| Programme ID | parental | Short id — used in CLI (--programme parental). Lowercase, no spaces. |
| Label | Parental Control | Human name shown in delivery cards. |
| Path | D:/Rondaninidotcom/Parental | Full folder path. Use forward slashes. Must match where you open Cursor. |
| Jira | parental | Jira Berta project id — not the ticket prefix. Usually same as Programme ID. Maps to ORCH, INDIE, PARENTAL, etc. in Jira Cloud. |
| Policy | ask | Empty = inherit global. always = auto tickets. never = no Jira. |
JSON is copied to your clipboard. Save it here:
C:\Users\YOURNAME\.berta-seal\programmes.json
In PowerShell: notepad $env:USERPROFILE\.berta-seal\programmes.json → paste → save.
node D:\BertaSeal\product\bin\seal.mjs init --target D:\Rondaninidotcom\Parental
Creates .cursor/rules/seal.mdc so Cursor agents follow Seal workflow.
Add an entry to D:\mix\jira-berta\projects.json (same id + localPath), then:
node D:\mix\jira-berta\bin\jira-berta.mjs bootstrap --create --only parental
Skip this if the project already exists in Jira Berta (e.g. orchestra, indie).
cd D:\Rondaninidotcom\Parental node D:\BertaSeal\product\bin\seal.mjs health
Must show your programme name — not Cwd programme: (none).
(none), the Path in admin does not match your current folder.Existing config
Open %USERPROFILE%\.berta-seal\programmes.json in Notepad, copy all, paste into the Paste programmes.json box in admin.
All rows appear in the table. Edit paths, add rows, or change policies.
Paste back into the same file and save. Run seal init --target only for new folders.
Policies
Separate from programmes — controls whether agents open Jira tickets without asking.
| Setting | When to use |
|---|---|
ask (default) | Agent asks before every seal open / seal done |
always | Power users — tickets open/close automatically |
never | Scratch folders — work without Jira |
After editing: click Copy policies.json → save to %USERPROFILE%\.berta-seal\policies.json
Or click Copy CLI commands and run them in PowerShell instead of editing JSON.
Confused?
| What you see | Fix |
|---|---|
seal.berta.one/admin → 404 | Use local file D:\BertaSeal\website\admin.html |
Cwd programme: (none) | Path in admin ≠ folder you're in. Fix Path, save programmes.json. |
| Ticket goes to ORCH instead of your project | Programme not registered — Seal fell back to Orchestra. |
Jira project doesn't exist | Run bootstrap --create --only <id> in jira-berta. |
| Copied JSON but nothing changed | You must save to .berta-seal\programmes.json — admin only copies to clipboard. |
| Policy keeps asking | Use --force once, or seal policy remember --programme <id> always |
Example
Programme ID: parental Label: Parental Control Path: D:/Rondaninidotcom/Parental Jira: parental → tickets like PARENTAL-2 Policy: ask Then: seal init --target D:\Rondaninidotcom\Parental jira-berta bootstrap --create --only parental cd D:\Rondaninidotcom\Parental && seal health