diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 9fe6e75..48236a4 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,11 +10,21 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 + - uses: actions/checkout@v7 + with: + repository: inkbox-ai/inkbox + ref: 8f4b37c56cd153a2acc6cfabe27dbbeb43510f00 + path: .ci/inkbox - uses: actions/setup-node@v7 with: node-version: 22 cache: npm - - run: npm ci + - run: | + npm ci --prefix .ci/inkbox/sdk/typescript + npm run build --prefix .ci/inkbox/sdk/typescript + npm install --no-save --package-lock=false \ + ./.ci/inkbox/sdk/typescript \ + @opencode-ai/sdk@1.17.18 @opencode-ai/plugin@1.17.18 - run: npm run lint - run: npm run typecheck - run: npm test @@ -26,12 +36,25 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 + - uses: actions/checkout@v7 + with: + repository: inkbox-ai/inkbox + ref: 8f4b37c56cd153a2acc6cfabe27dbbeb43510f00 + path: .ci/inkbox - uses: actions/setup-node@v7 with: node-version: 22 cache: npm - - run: npm ci - - run: npm install -D @opencode-ai/plugin@latest + - run: | + npm ci --prefix .ci/inkbox/sdk/typescript + npm run build --prefix .ci/inkbox/sdk/typescript + npm install --no-save --package-lock=false \ + ./.ci/inkbox/sdk/typescript \ + @opencode-ai/sdk@1.17.18 @opencode-ai/plugin@1.17.18 + - run: | + npm install --no-save --package-lock=false \ + ./.ci/inkbox/sdk/typescript \ + @opencode-ai/sdk@latest @opencode-ai/plugin@latest - run: npm run typecheck - run: npx vitest run tests/contract @@ -39,10 +62,20 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 + - uses: actions/checkout@v7 + with: + repository: inkbox-ai/inkbox + ref: 8f4b37c56cd153a2acc6cfabe27dbbeb43510f00 + path: .ci/inkbox - uses: actions/setup-node@v7 with: node-version: 22 cache: npm - - run: npm ci + - run: | + npm ci --prefix .ci/inkbox/sdk/typescript + npm run build --prefix .ci/inkbox/sdk/typescript + npm install --no-save --package-lock=false \ + ./.ci/inkbox/sdk/typescript \ + @opencode-ai/sdk@1.17.18 @opencode-ai/plugin@1.17.18 - run: npm install -g opencode-ai@latest - - run: bash scripts/smoke-loader.sh + - run: INKBOX_SDK_PATH="$PWD/.ci/inkbox/sdk/typescript" bash scripts/smoke-loader.sh diff --git a/CHANGELOG.md b/CHANGELOG.md index 5223f20..fde581c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Initial release. +- Requires `@inkbox/sdk` 0.5.0 or newer. - 56 `inkbox_*` tools across email, SMS/MMS, iMessage, calls, contacts, notes, contact rules, access grants, encrypted vault, and diagnostics. 24 are enabled by default; the rest are opt-in via the `tools.enable` plugin option diff --git a/package-lock.json b/package-lock.json index e6f58dc..6b57bc8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "license": "MIT", "dependencies": { - "@inkbox/sdk": ">=0.4.24 <1.0.0", + "@inkbox/sdk": ">=0.5.0 <1.0.0", "@opencode-ai/sdk": ">=1.17.18 <1.19.0", "ws": "^8.21.0", "zod": "4.1.8" @@ -605,9 +605,9 @@ } }, "node_modules/@inkbox/sdk": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/@inkbox/sdk/-/sdk-0.4.24.tgz", - "integrity": "sha512-x5u4aXnGuB063Q91B5NVDKVLUQs+Atab4KQn7PZShC1jZ/apPsbLydJRDQfzZv7MVWtVa2QA/ybqG7TsVgd6aw==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@inkbox/sdk/-/sdk-0.5.0.tgz", + "integrity": "sha512-F2jgPLzUSNH81MUa49HidpZuTNzBK+Ovk/7VfuV0ECOukYeDuVdApT6Sr2Yt8bug28T4BAc+yGyQZmiOh13ZzA==", "license": "MIT", "dependencies": { "@peculiar/x509": "^2.0.0", diff --git a/package.json b/package.json index 40b06a0..ac8465a 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "opencode": ">=1.15.0 <1.19.0" }, "dependencies": { - "@inkbox/sdk": ">=0.4.24 <1.0.0", + "@inkbox/sdk": ">=0.5.0 <1.0.0", "@opencode-ai/sdk": ">=1.17.18 <1.19.0", "ws": "^8.21.0", "zod": "4.1.8" diff --git a/scripts/smoke-loader.sh b/scripts/smoke-loader.sh index eae38c0..d12e67d 100644 --- a/scripts/smoke-loader.sh +++ b/scripts/smoke-loader.sh @@ -25,7 +25,11 @@ echo "==> creating throwaway project in $WORKDIR" cd "$WORKDIR" git init -q . npm init -y >/dev/null -npm install --silent "$TARBALL" +if [ -n "${INKBOX_SDK_PATH:-}" ]; then + npm install --silent "$INKBOX_SDK_PATH" "$TARBALL" +else + npm install --silent "$TARBALL" +fi mkdir -p .opencode/plugins # The wrapper loads the packaged plugin exactly as opencode would, then drops