allye-pi 2.7.0 → 2.8.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.
- package/README.md +4 -4
- package/bootstrap/allye.md +1 -1
- package/docs/install-omp.md +31 -3
- package/docs/install-pi.md +40 -4
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -59,7 +59,7 @@ Then open `/plugin`, find the Allye MCP server, click **Connect** and sign in. U
|
|
|
59
59
|
|
|
60
60
|
### Codex, OpenCode
|
|
61
61
|
|
|
62
|
-
Paste into the agent:
|
|
62
|
+
Paste into the agent. The install and update guides install one pinned release: the latest GitHub release unless you name a version. They check that it exists, never download from a branch, and keep a timestamped backup of any config they rewrite (`opencode.json`, `~/.codex/AGENTS.md`, `~/.codex/skills/bridge*`) under `~/.allye/backups/<harness>/`.
|
|
63
63
|
|
|
64
64
|
```
|
|
65
65
|
Install Allye following: https://raw.githubusercontent.com/allye-app/allye-plugin/main/docs/install-codex.md
|
|
@@ -69,11 +69,11 @@ Install Allye following: https://raw.githubusercontent.com/allye-app/allye-plugi
|
|
|
69
69
|
### Pi, OMP
|
|
70
70
|
|
|
71
71
|
```bash
|
|
72
|
-
pi install npm:allye-pi # Pi
|
|
73
|
-
omp plugin install allye-pi # OMP
|
|
72
|
+
pi install npm:allye-pi@<version> # Pi
|
|
73
|
+
omp plugin install allye-pi@<version> # OMP
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
Then add the `allye` MCP server as described in [install-pi.md](docs/install-pi.md) or [install-omp.md](docs/install-omp.md).
|
|
76
|
+
Use a pinned `<version>` (the guides resolve it for you). Then add the `allye` MCP server as described in [install-pi.md](docs/install-pi.md) or [install-omp.md](docs/install-omp.md).
|
|
77
77
|
|
|
78
78
|
## Your organization's skills
|
|
79
79
|
|
package/bootstrap/allye.md
CHANGED
|
@@ -8,7 +8,7 @@ Allye is available in this session: the Allye MCP server and the Bridge skill.
|
|
|
8
8
|
- Identify this repository's project with `projects` action `project_resolve` (`repository_url` = the git remote URL without credentials: drop any userinfo before `@`, the query and the fragment) before the first project-scoped call.
|
|
9
9
|
- On `ambiguous` or `not_found`, ask the user once; never pick a project or team, set a default team, or create a project without the user's answer.
|
|
10
10
|
- The team follows the project: project, epic, spec and task calls need no team step.
|
|
11
|
-
- A default team (`team` action `team_set_default`) is only needed to create projects and for memories, todos
|
|
11
|
+
- A default team (`team` action `team_set_default`) is only needed to create projects and for memories, todos and user config without `team_id`. If you belong to several teams, pass `team_id` on memory writes: the project's team, as returned by `project_resolve`.
|
|
12
12
|
|
|
13
13
|
## Bridge (`/bridge <mode>`)
|
|
14
14
|
|
package/docs/install-omp.md
CHANGED
|
@@ -6,11 +6,39 @@ OMP is a fork of Pi and reads the same package manifest (`omp`, falling back to
|
|
|
6
6
|
|
|
7
7
|
## Install the package
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
Resolve the version first, before any change. Run the resolve block, the npm check and the install in one shell session, so `VERSION` and `TAG` carry over. Only stable `vX.Y.Z` releases are accepted (no pre-release or build suffix), and `curl` and `jq` are required. The version is the one the user named, otherwise the latest GitHub release of `allye-app/allye-plugin`.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Never put user text in this script unless it already matched ^v?[0-9]+\.[0-9]+\.[0-9]+$: write only the matched digits and dots (never the original text, never a value containing a quote).
|
|
13
|
+
RAW='' # set to the version only if you checked the user's text as a whole against ^v?[0-9]+\.[0-9]+\.[0-9]+$ (digits, dots, optional leading v); otherwise leave empty
|
|
14
|
+
[ -n "$RAW" ] || RAW=$(curl -fsSL https://api.github.com/repos/allye-app/allye-plugin/releases/latest | jq -r '.tag_name // empty')
|
|
15
|
+
RAW="${RAW#v}"
|
|
16
|
+
if ! [[ "$RAW" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then echo "No valid release version: $RAW" >&2; return 1 2>/dev/null || exit 1; fi
|
|
17
|
+
VERSION="$RAW"; TAG="v$VERSION"
|
|
18
|
+
echo "Installing Allye $VERSION"
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Tell the user the version. If no valid version resolves, stop and change nothing.
|
|
22
|
+
|
|
23
|
+
Check that this version exists on npm. The release tag can appear before the npm publish: if the command fails, report it and stop; never fall back to an unpinned install. Show the user the printed version and `dist.integrity`. The Git release tag is trusted as published.
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
: "${VERSION:?}" "${TAG:?}"
|
|
27
|
+
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { echo "Invalid VERSION" >&2; return 1 2>/dev/null || exit 1; }
|
|
28
|
+
(cd "$HOME" && npm view allye-pi@"$VERSION" version dist.integrity)
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Before installing, list the installed plugins with `omp plugin list` and note any `allye-pi` entry. If an older unpinned or different-version `allye-pi` is present, follow the update rules below (confirm with the user, then `--force` or uninstall first) so the pinned install replaces it instead of adding a second copy. After the install, run `omp plugin list` again and confirm exactly one `allye-pi` entry, at the pinned version.
|
|
32
|
+
|
|
33
|
+
Install the pinned version:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
: "${VERSION:?}" "${TAG:?}"
|
|
37
|
+
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { echo "Invalid VERSION" >&2; return 1 2>/dev/null || exit 1; }
|
|
38
|
+
omp plugin install allye-pi@"$VERSION"
|
|
11
39
|
```
|
|
12
40
|
|
|
13
|
-
|
|
41
|
+
To update, resolve the newer version as above (same shell, same checks) and re-run the install with it. If OMP says the plugin is already installed, first confirm the installed plugin is `allye-pi` (`omp plugin list`) and that the user agrees, then confirm `omp plugin install --help` lists `--force` and re-run with `--force`; if the flag is not listed, run `omp plugin uninstall allye-pi` and install the pinned version again. If the install fails after the uninstall, tell the user to reinstall the previous version and report the failure. Do not use `omp plugin upgrade`. Remove with `omp plugin uninstall allye-pi`.
|
|
14
42
|
|
|
15
43
|
## Configure the MCP server
|
|
16
44
|
|
package/docs/install-pi.md
CHANGED
|
@@ -10,13 +10,49 @@ It never edits Pi's MCP configuration or reads credentials.
|
|
|
10
10
|
|
|
11
11
|
## Install the package
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
Resolve the version first, before any change. Run the resolve block, the npm check and the install in one shell session, so `VERSION` and `TAG` carry over. Only stable `vX.Y.Z` releases are accepted (no pre-release or build suffix), and `curl` and `jq` are required. The version is the one the user named, otherwise the latest GitHub release of `allye-app/allye-plugin`.
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Never put user text in this script unless it already matched ^v?[0-9]+\.[0-9]+\.[0-9]+$: write only the matched digits and dots (never the original text, never a value containing a quote).
|
|
17
|
+
RAW='' # set to the version only if you checked the user's text as a whole against ^v?[0-9]+\.[0-9]+\.[0-9]+$ (digits, dots, optional leading v); otherwise leave empty
|
|
18
|
+
[ -n "$RAW" ] || RAW=$(curl -fsSL https://api.github.com/repos/allye-app/allye-plugin/releases/latest | jq -r '.tag_name // empty')
|
|
19
|
+
RAW="${RAW#v}"
|
|
20
|
+
if ! [[ "$RAW" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then echo "No valid release version: $RAW" >&2; return 1 2>/dev/null || exit 1; fi
|
|
21
|
+
VERSION="$RAW"; TAG="v$VERSION"
|
|
22
|
+
echo "Installing Allye $VERSION"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Tell the user the version. If no valid version resolves, stop and change nothing.
|
|
26
|
+
|
|
27
|
+
Check that this version exists on npm. The release tag can appear before the npm publish: if the command fails, report it and stop; never fall back to an unpinned install. Show the user the printed version and `dist.integrity`. The Git release tag is trusted as published.
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
: "${VERSION:?}" "${TAG:?}"
|
|
31
|
+
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { echo "Invalid VERSION" >&2; return 1 2>/dev/null || exit 1; }
|
|
32
|
+
(cd "$HOME" && npm view allye-pi@"$VERSION" version dist.integrity)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
The npm check above must already have passed before anything is removed. Then list the installed packages with `pi list`. If it shows another `allye-pi` source (unpinned npm, an older pinned npm, or the git source `git:github.com/allye-app/allye-plugin@vX.Y.Z`), confirm with the user and remove that exact source string as shown by `pi list` with `pi remove <source>`, so the pinned install replaces it instead of adding a second source. Do the removal just before the install. If the install then fails, tell the user to reinstall the previous version (the source string you removed) and report the failure. After the install, run `pi list` again and confirm exactly one `allye-pi` source (npm or git), at the pinned version.
|
|
36
|
+
|
|
37
|
+
Install the pinned version:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
: "${VERSION:?}" "${TAG:?}"
|
|
41
|
+
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { echo "Invalid VERSION" >&2; return 1 2>/dev/null || exit 1; }
|
|
42
|
+
pi install npm:allye-pi@"$VERSION"
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
From Git, at the release tag:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
: "${VERSION:?}" "${TAG:?}"
|
|
49
|
+
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { echo "Invalid VERSION" >&2; return 1 2>/dev/null || exit 1; }
|
|
50
|
+
pi install git:github.com/allye-app/allye-plugin@"$TAG"
|
|
15
51
|
```
|
|
16
52
|
|
|
17
|
-
From
|
|
53
|
+
From a local checkout, for development: `pi install /absolute/path/to/allye-plugin`.
|
|
18
54
|
|
|
19
|
-
|
|
55
|
+
To update, resolve the newer version as above (same shell, same checks) and re-run `pi install npm:allye-pi@"$VERSION"` with it (no `pi update`, which would not move a pinned version), then repeat the `pi list` check: exactly one `allye-pi` source. Remove with `pi remove <source>` using the source string shown by `pi list` (`npm:allye-pi@<version>` or the git source `git:github.com/allye-app/allye-plugin@<tag>`). Removing the package does not remove MCP configuration or OAuth credentials.
|
|
20
56
|
|
|
21
57
|
## Configure the MCP server
|
|
22
58
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "allye-pi",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.8.1",
|
|
4
4
|
"description": "Allye extension for Pi and OMP: the Allye bootstrap, the Bridge skill and the repository-to-project link",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -49,9 +49,10 @@
|
|
|
49
49
|
"test:installer": "bash install/test-validation.sh && bash install/test-installer.sh && npm run test:docs-gate",
|
|
50
50
|
"test:bootstrap": "bash test/test-bootstrap.sh && bash hooks/test-session-start.sh",
|
|
51
51
|
"test:agents": "node test/test-agents.mjs",
|
|
52
|
+
"test:guides": "node test/test-install-guides.mjs",
|
|
52
53
|
"test:docs-gate": "bash install/test-docs-gate.sh",
|
|
53
54
|
"test:skills": "node test/test-skills-text.mjs && node test/test-ci-proof.mjs && node test/test-ci-workflows.mjs",
|
|
54
|
-
"test": "npm run test:bootstrap && npm run test:agents && npm run test:skills && npm run test:installer && npm run test:pi && npm run test:opencode"
|
|
55
|
+
"test": "npm run test:bootstrap && npm run test:agents && npm run test:guides && npm run test:skills && npm run test:installer && npm run test:pi && npm run test:opencode"
|
|
55
56
|
},
|
|
56
57
|
"repository": {
|
|
57
58
|
"type": "git",
|