chore: update CI workflows and issue templates for oh-my-openagent rename

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
YeonGyu-Kim
2026-03-17 14:14:20 +09:00
parent d4b54fa5b8
commit a067a6d5d3
8 changed files with 148 additions and 164 deletions
+10 -20
View File
@@ -1,27 +1,22 @@
name: Bug Report name: Bug Report
description: Report a bug or unexpected behavior in oh-my-opencode description: Report a bug or unexpected behavior in oh-my-openagent
title: "[Bug]: "
labels: ["bug", "needs-triage"] labels: ["bug", "needs-triage"]
body: body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
**Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy) for details. **Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy) for details.
- type: checkboxes - type: checkboxes
id: prerequisites id: prerequisites
attributes: attributes:
label: Prerequisites label: Prerequisites
description: Please confirm the following before submitting description: Please confirm the following before submitting
options: options:
- label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy)) - label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy))
required: true
- label: I have searched existing issues to avoid duplicates - label: I have searched existing issues to avoid duplicates
required: true required: true
- label: I am using the latest version of oh-my-opencode - label: I am using the latest version of oh-my-openagent
required: true - label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-openagent#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer
- label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-opencode#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer
required: true
- type: textarea - type: textarea
id: description id: description
@@ -38,8 +33,7 @@ body:
label: Steps to Reproduce label: Steps to Reproduce
description: Steps to reproduce the behavior description: Steps to reproduce the behavior
placeholder: | placeholder: |
1. Configure oh-my-opencode with... 1. Configure oh-my-openagent with...
2. Run command '...'
3. See error... 3. See error...
validations: validations:
required: true required: true
@@ -67,15 +61,12 @@ body:
attributes: attributes:
label: Doctor Output label: Doctor Output
description: | description: |
**Required:** Run `bunx oh-my-opencode doctor` and paste the full output below. **Required:** Run `bunx oh-my-openagent doctor` and paste the full output below.
This helps us diagnose your environment and configuration.
placeholder: | placeholder: |
Paste the output of: bunx oh-my-opencode doctor Paste the output of: bunx oh-my-openagent doctor
Example: Example:
✓ OpenCode version: 1.0.150 ✓ OpenCode version: 1.0.150
✓ oh-my-opencode version: 1.2.3 ✓ oh-my-openagent version: 1.2.3
✓ Plugin loaded successfully
... ...
render: shell render: shell
validations: validations:
@@ -93,8 +84,7 @@ body:
id: config id: config
attributes: attributes:
label: Configuration label: Configuration
description: If relevant, share your oh-my-opencode configuration (remove sensitive data) description: If relevant, share your oh-my-openagent configuration (remove sensitive data)
placeholder: |
{ {
"agents": { ... }, "agents": { ... },
"disabled_hooks": [ ... ] "disabled_hooks": [ ... ]
+1 -2
View File
@@ -4,5 +4,4 @@ contact_links:
url: https://discord.gg/PUwSMR9XNk url: https://discord.gg/PUwSMR9XNk
about: Join our Discord server for real-time discussions and community support about: Join our Discord server for real-time discussions and community support
- name: Documentation - name: Documentation
url: https://github.com/code-yeongyu/oh-my-opencode#readme url: https://github.com/code-yeongyu/oh-my-openagent#readme
about: Read the comprehensive documentation and guides
+7 -14
View File
@@ -1,27 +1,22 @@
name: Feature Request name: Feature Request
description: Suggest a new feature or enhancement for oh-my-opencode description: Suggest a new feature or enhancement for oh-my-openagent
title: "[Feature]: "
labels: ["enhancement", "needs-triage"] labels: ["enhancement", "needs-triage"]
body: body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
**Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy) for details. **Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy) for details.
- type: checkboxes - type: checkboxes
id: prerequisites id: prerequisites
attributes: attributes:
label: Prerequisites label: Prerequisites
description: Please confirm the following before submitting description: Please confirm the following before submitting
options: options:
- label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy)) - label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy))
required: true
- label: I have searched existing issues and discussions to avoid duplicates - label: I have searched existing issues and discussions to avoid duplicates
required: true required: true
- label: This feature request is specific to oh-my-opencode (not OpenCode core) - label: This feature request is specific to oh-my-openagent (not OpenCode core)
required: true - label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-openagent#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer
- label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-opencode#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer
required: true
- type: textarea - type: textarea
id: problem id: problem
@@ -59,11 +54,9 @@ body:
attributes: attributes:
label: Doctor Output (Optional) label: Doctor Output (Optional)
description: | description: |
If relevant to your feature request, run `bunx oh-my-opencode doctor` and paste the output. If relevant to your feature request, run `bunx oh-my-openagent doctor` and paste the output.
This helps us understand your environment.
placeholder: | placeholder: |
Paste the output of: bunx oh-my-opencode doctor Paste the output of: bunx oh-my-openagent doctor
(Optional for feature requests)
render: shell render: shell
- type: textarea - type: textarea
+6 -12
View File
@@ -1,25 +1,21 @@
name: Question or Discussion name: Question or Discussion
description: Ask a question or start a discussion about oh-my-opencode description: Ask a question or start a discussion about oh-my-openagent
title: "[Question]: "
labels: ["question", "needs-triage"] labels: ["question", "needs-triage"]
body: body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
**Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy) for details. **Please write your issue in English.** See our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy) for details.
- type: checkboxes - type: checkboxes
id: prerequisites id: prerequisites
attributes: attributes:
label: Prerequisites label: Prerequisites
description: Please confirm the following before submitting description: Please confirm the following before submitting
options: options:
- label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/CONTRIBUTING.md#language-policy)) - label: I will write this issue in English (see our [Language Policy](https://github.com/code-yeongyu/oh-my-openagent/blob/dev/CONTRIBUTING.md#language-policy))
required: true
- label: I have searched existing issues and discussions - label: I have searched existing issues and discussions
required: true required: true
- label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-opencode#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer - label: I have read the [documentation](https://github.com/code-yeongyu/oh-my-openagent#readme) or asked an AI coding agent with this project's GitHub URL loaded and couldn't find the answer
required: true
- label: This is a question (not a bug report or feature request) - label: This is a question (not a bug report or feature request)
required: true required: true
@@ -53,10 +49,8 @@ body:
attributes: attributes:
label: Doctor Output (Optional) label: Doctor Output (Optional)
description: | description: |
If your question is about configuration or setup, run `bunx oh-my-opencode doctor` and paste the output. If your question is about configuration or setup, run `bunx oh-my-openagent doctor` and paste the output.
placeholder: | Paste the output of: bunx oh-my-openagent doctor
Paste the output of: bunx oh-my-opencode doctor
(Optional for questions)
render: shell render: shell
- type: dropdown - type: dropdown
+2 -4
View File
@@ -23,12 +23,10 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
path-to-signatures: 'signatures/cla.json' path-to-signatures: 'signatures/cla.json'
path-to-document: 'https://github.com/code-yeongyu/oh-my-opencode/blob/master/CLA.md' path-to-document: 'https://github.com/code-yeongyu/oh-my-openagent/blob/master/CLA.md'
branch: 'dev'
allowlist: code-yeongyu,bot*,dependabot*,github-actions*,*[bot],sisyphus-dev-ai,web-flow allowlist: code-yeongyu,bot*,dependabot*,github-actions*,*[bot],sisyphus-dev-ai,web-flow
custom-notsigned-prcomment: | custom-notsigned-prcomment: |
Thank you for your contribution! Before we can merge this PR, we need you to sign our [Contributor License Agreement (CLA)](https://github.com/code-yeongyu/oh-my-opencode/blob/master/CLA.md). Thank you for your contribution! Before we can merge this PR, we need you to sign our [Contributor License Agreement (CLA)](https://github.com/code-yeongyu/oh-my-openagent/blob/master/CLA.md).
**To sign the CLA**, please comment on this PR with: **To sign the CLA**, please comment on this PR with:
``` ```
I have read the CLA Document and I hereby sign the CLA I have read the CLA Document and I hereby sign the CLA
+40 -59
View File
@@ -59,39 +59,20 @@ jobs:
- name: Check if already published - name: Check if already published
id: check id: check
run: | run: |
PKG_NAME="oh-my-opencode-${{ matrix.platform }}"
VERSION="${{ inputs.version }}" VERSION="${{ inputs.version }}"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/${PKG_NAME}/${VERSION}")
# Convert platform name for output (replace - with _)
PLATFORM_KEY="${{ matrix.platform }}" PLATFORM_KEY="${{ matrix.platform }}"
PLATFORM_KEY="${PLATFORM_KEY//-/_}" PLATFORM_KEY="${PLATFORM_KEY//-/_}"
if [ "$STATUS" = "200" ]; then
# Check oh-my-opencode
OC_STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-opencode-${{ matrix.platform }}/${VERSION}")
# Check oh-my-openagent
OA_STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-openagent-${{ matrix.platform }}/${VERSION}")
echo "oh-my-opencode-${{ matrix.platform }}@${VERSION}: ${OC_STATUS}"
echo "oh-my-openagent-${{ matrix.platform }}@${VERSION}: ${OA_STATUS}"
if [ "$OC_STATUS" = "200" ]; then
echo "skip_opencode=true" >> $GITHUB_OUTPUT
echo "✓ oh-my-opencode-${{ matrix.platform }}@${VERSION} already published"
else
echo "skip_opencode=false" >> $GITHUB_OUTPUT
echo "→ oh-my-opencode-${{ matrix.platform }}@${VERSION} needs publishing"
fi
if [ "$OA_STATUS" = "200" ]; then
echo "skip_openagent=true" >> $GITHUB_OUTPUT
echo "✓ oh-my-openagent-${{ matrix.platform }}@${VERSION} already published"
else
echo "skip_openagent=false" >> $GITHUB_OUTPUT
echo "→ oh-my-openagent-${{ matrix.platform }}@${VERSION} needs publishing"
fi
# Skip build only if BOTH are already published
if [ "$OC_STATUS" = "200" ] && [ "$OA_STATUS" = "200" ]; then
echo "skip=true" >> $GITHUB_OUTPUT echo "skip=true" >> $GITHUB_OUTPUT
echo "skip_${PLATFORM_KEY}=true" >> $GITHUB_OUTPUT
echo "✓ ${PKG_NAME}@${VERSION} already published"
else else
echo "skip=false" >> $GITHUB_OUTPUT echo "skip=false" >> $GITHUB_OUTPUT
echo "skip_${PLATFORM_KEY}=false" >> $GITHUB_OUTPUT
echo "→ ${PKG_NAME}@${VERSION} needs publishing"
fi fi
- name: Update version in package.json - name: Update version in package.json
@@ -216,6 +197,10 @@ jobs:
retention-days: 1 retention-days: 1
if-no-files-found: error if-no-files-found: error
# =============================================================================
# Job 2: Publish all platforms (oh-my-openagent + oh-my-opencode)
# - Uses NODE_AUTH_TOKEN for auth + OIDC for provenance attestation
# =============================================================================
publish: publish:
needs: build needs: build
if: always() && !cancelled() if: always() && !cancelled()
@@ -226,38 +211,35 @@ jobs:
matrix: matrix:
platform: [darwin-arm64, darwin-x64, darwin-x64-baseline, linux-x64, linux-x64-baseline, linux-arm64, linux-x64-musl, linux-x64-musl-baseline, linux-arm64-musl, windows-x64, windows-x64-baseline] platform: [darwin-arm64, darwin-x64, darwin-x64-baseline, linux-x64, linux-x64-baseline, linux-arm64, linux-x64-musl, linux-x64-musl-baseline, linux-arm64-musl, windows-x64, windows-x64-baseline]
steps: steps:
- name: Check if already published - name: Check if oh-my-openagent already published
id: check id: check
run: | run: |
PKG_NAME="oh-my-openagent-${{ matrix.platform }}"
VERSION="${{ inputs.version }}" VERSION="${{ inputs.version }}"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/${PKG_NAME}/${VERSION}")
OC_STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-opencode-${{ matrix.platform }}/${VERSION}") if [ "$STATUS" = "200" ]; then
OA_STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-openagent-${{ matrix.platform }}/${VERSION}") echo "skip=true" >> $GITHUB_OUTPUT
echo "✓ ${PKG_NAME}@${VERSION} already published, skipping"
if [ "$OC_STATUS" = "200" ]; then
echo "skip_opencode=true" >> $GITHUB_OUTPUT
echo "✓ oh-my-opencode-${{ matrix.platform }}@${VERSION} already published"
else else
echo "skip_opencode=false" >> $GITHUB_OUTPUT echo "→ ${PKG_NAME}@${VERSION} will be published"
fi fi
if [ "$OA_STATUS" = "200" ]; then - name: Check if oh-my-opencode already published
echo "skip_openagent=true" >> $GITHUB_OUTPUT id: check-openagent
echo "✓ oh-my-openagent-${{ matrix.platform }}@${VERSION} already published" run: |
PKG_NAME="oh-my-opencode-${{ matrix.platform }}"
VERSION="${{ inputs.version }}"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/${PKG_NAME}/${VERSION}")
if [ "$STATUS" = "200" ]; then
echo "skip=true" >> $GITHUB_OUTPUT
echo "✓ ${PKG_NAME}@${VERSION} already published, skipping"
else else
echo "skip_openagent=false" >> $GITHUB_OUTPUT echo "→ ${PKG_NAME}@${VERSION} will be published"
fi
# Need artifact if either package needs publishing
if [ "$OC_STATUS" = "200" ] && [ "$OA_STATUS" = "200" ]; then
echo "skip_all=true" >> $GITHUB_OUTPUT
else
echo "skip_all=false" >> $GITHUB_OUTPUT
fi fi
- name: Download artifact - name: Download artifact
id: download id: download
if: steps.check.outputs.skip_all != 'true' if: steps.check.outputs.skip != 'true' || steps.check-openagent.outputs.skip != 'true'
continue-on-error: true continue-on-error: true
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4
with: with:
@@ -265,7 +247,7 @@ jobs:
path: . path: .
- name: Extract artifact - name: Extract artifact
if: steps.check.outputs.skip_all != 'true' && steps.download.outcome == 'success' if: (steps.check.outputs.skip != 'true' || steps.check-openagent.outputs.skip != 'true') && steps.download.outcome == 'success'
run: | run: |
PLATFORM="${{ matrix.platform }}" PLATFORM="${{ matrix.platform }}"
mkdir -p packages/${PLATFORM} mkdir -p packages/${PLATFORM}
@@ -281,13 +263,12 @@ jobs:
ls -la packages/${PLATFORM}/bin/ ls -la packages/${PLATFORM}/bin/
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
if: steps.check.outputs.skip_all != 'true' && steps.download.outcome == 'success' if: (steps.check.outputs.skip != 'true' || steps.check-openagent.outputs.skip != 'true') && steps.download.outcome == 'success'
with: with:
node-version: "24" node-version: "24"
registry-url: "https://registry.npmjs.org" registry-url: "https://registry.npmjs.org"
- name: Publish oh-my-opencode-${{ matrix.platform }} - name: Publish oh-my-openagent-${{ matrix.platform }}
if: steps.check.outputs.skip_opencode != 'true' && steps.download.outcome == 'success'
run: | run: |
cd packages/${{ matrix.platform }} cd packages/${{ matrix.platform }}
@@ -302,14 +283,14 @@ jobs:
NPM_CONFIG_PROVENANCE: true NPM_CONFIG_PROVENANCE: true
timeout-minutes: 15 timeout-minutes: 15
- name: Publish oh-my-openagent-${{ matrix.platform }} - name: Publish oh-my-opencode-${{ matrix.platform }} (alias)
if: steps.check.outputs.skip_openagent != 'true' && steps.download.outcome == 'success'
run: |
cd packages/${{ matrix.platform }} cd packages/${{ matrix.platform }}
# Rename package for oh-my-openagent # Rename package for oh-my-opencode
jq --arg name "oh-my-openagent-${{ matrix.platform }}" \ jq --arg name "oh-my-opencode-${{ matrix.platform }}" \
--arg desc "Platform-specific binary for oh-my-openagent (${{ matrix.platform }})" \ --arg desc "Platform-specific binary for oh-my-opencode (${{ matrix.platform }})" \
'.name = $name | .description = $desc | .bin = {"oh-my-opencode": (.bin | to_entries | .[0].value)}' \
package.json > tmp.json && mv tmp.json package.json
'.name = $name | .description = $desc | .bin = {"oh-my-openagent": (.bin | to_entries | .[0].value)}' \ '.name = $name | .description = $desc | .bin = {"oh-my-openagent": (.bin | to_entries | .[0].value)}' \
package.json > tmp.json && mv tmp.json package.json package.json > tmp.json && mv tmp.json package.json
+75 -45
View File
@@ -151,8 +151,7 @@ jobs:
run: | run: |
VERSION="${{ inputs.version }}" VERSION="${{ inputs.version }}"
if [ -z "$VERSION" ]; then if [ -z "$VERSION" ]; then
PREV=$(curl -s https://registry.npmjs.org/oh-my-opencode/latest | jq -r '.version // "0.0.0"') PREV=$(curl -s https://registry.npmjs.org/oh-my-openagent/latest | jq -r '.version // "0.0.0"')
BASE="${PREV%%-*}"
IFS='.' read -r MAJOR MINOR PATCH <<< "$BASE" IFS='.' read -r MAJOR MINOR PATCH <<< "$BASE"
case "${{ inputs.bump }}" in case "${{ inputs.bump }}" in
major) VERSION="$((MAJOR+1)).0.0" ;; major) VERSION="$((MAJOR+1)).0.0" ;;
@@ -174,11 +173,10 @@ jobs:
- name: Check if already published - name: Check if already published
id: check id: check
run: | run: |
VERSION="${{ steps.version.outputs.version }}" STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-openagent/${VERSION}")
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-opencode/${VERSION}")
if [ "$STATUS" = "200" ]; then if [ "$STATUS" = "200" ]; then
echo "skip=true" >> $GITHUB_OUTPUT echo "skip=true" >> $GITHUB_OUTPUT
echo "✓ oh-my-opencode@${VERSION} already published" echo "✓ oh-my-openagent@${VERSION} already published"
else else
echo "skip=false" >> $GITHUB_OUTPUT echo "skip=false" >> $GITHUB_OUTPUT
fi fi
@@ -204,59 +202,91 @@ jobs:
bunx tsc --emitDeclarationOnly bunx tsc --emitDeclarationOnly
bun run build:schema bun run build:schema
- name: Publish oh-my-opencode - name: Publish oh-my-openagent (primary)
if: steps.check.outputs.skip != 'true' if: steps.check.outputs.skip != 'true'
run: | run: |
TAG_ARG="" # Update package name to oh-my-openagent
if [ -n "${{ steps.version.outputs.dist_tag }}" ]; then jq '.name = "oh-my-openagent"' package.json > tmp.json && mv tmp.json package.json
TAG_ARG="--tag ${{ steps.version.outputs.dist_tag }}"
fi
npm publish --access public --provenance $TAG_ARG
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
NPM_CONFIG_PROVENANCE: true
- name: Check if oh-my-openagent already published
id: check-openagent
run: |
VERSION="${{ steps.version.outputs.version }}"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/oh-my-openagent/${VERSION}")
if [ "$STATUS" = "200" ]; then
echo "skip=true" >> $GITHUB_OUTPUT
echo "✓ oh-my-openagent@${VERSION} already published"
else
echo "skip=false" >> $GITHUB_OUTPUT
fi
- name: Publish oh-my-openagent
if: steps.check-openagent.outputs.skip != 'true'
run: |
VERSION="${{ steps.version.outputs.version }}"
# Update package name, version, and optionalDependencies for oh-my-openagent # Update optionalDependencies to use oh-my-openagent naming
jq --arg v "$VERSION" ' jq '.optionalDependencies = {
.name = "oh-my-openagent" | "oh-my-openagent-darwin-arm64": "${{ steps.version.outputs.version }}",
.version = $v | "oh-my-openagent-darwin-x64": "${{ steps.version.outputs.version }}",
.optionalDependencies = ( "oh-my-openagent-darwin-x64-baseline": "${{ steps.version.outputs.version }}",
.optionalDependencies | to_entries | "oh-my-openagent-linux-arm64": "${{ steps.version.outputs.version }}",
map(.key = (.key | sub("^oh-my-opencode-"; "oh-my-openagent-")) | .value = $v) | "oh-my-openagent-linux-arm64-musl": "${{ steps.version.outputs.version }}",
from_entries "oh-my-openagent-linux-x64": "${{ steps.version.outputs.version }}",
) "oh-my-openagent-linux-x64-baseline": "${{ steps.version.outputs.version }}",
' package.json > tmp.json && mv tmp.json package.json "oh-my-openagent-linux-x64-musl": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-x64-musl-baseline": "${{ steps.version.outputs.version }}",
"oh-my-openagent-windows-x64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-windows-x64-baseline": "${{ steps.version.outputs.version }}"
}' package.json > tmp.json && mv tmp.json package.json
TAG_ARG="" TAG_ARG=""
if [ -n "${{ steps.version.outputs.dist_tag }}" ]; then if [ -n "${{ steps.version.outputs.dist_tag }}" ]; then
TAG_ARG="--tag ${{ steps.version.outputs.dist_tag }}" TAG_ARG="--tag ${{ steps.version.outputs.dist_tag }}"
fi fi
npm publish --access public --provenance $TAG_ARG || echo "::warning::oh-my-openagent publish failed"
env: env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
NPM_CONFIG_PROVENANCE: true NPM_CONFIG_PROVENANCE: true
- name: Publish oh-my-opencode (alias)
if: steps.check.outputs.skip != 'true'
run: |
# Update package name to oh-my-opencode
jq '.name = "oh-my-opencode"' package.json > tmp.json && mv tmp.json package.json
# Update optionalDependencies to use oh-my-opencode naming
jq '.optionalDependencies = {
"oh-my-opencode-darwin-arm64": "${{ steps.version.outputs.version }}",
"oh-my-opencode-darwin-x64": "${{ steps.version.outputs.version }}",
"oh-my-opencode-darwin-x64-baseline": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-arm64": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-arm64-musl": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-x64": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-x64-baseline": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-x64-musl": "${{ steps.version.outputs.version }}",
"oh-my-opencode-linux-x64-musl-baseline": "${{ steps.version.outputs.version }}",
"oh-my-opencode-windows-x64": "${{ steps.version.outputs.version }}",
"oh-my-opencode-windows-x64-baseline": "${{ steps.version.outputs.version }}"
}' package.json > tmp.json && mv tmp.json package.json
TAG_ARG=""
if [ -n "${{ steps.version.outputs.dist_tag }}" ]; then
TAG_ARG="--tag ${{ steps.version.outputs.dist_tag }}"
fi
npm publish --access public --provenance $TAG_ARG || echo "oh-my-opencode alias publish may have failed (package may already exist)"
# Update package name to oh-my-openagent
jq '.name = "oh-my-openagent"' package.json > tmp.json && mv tmp.json package.json
# Update optionalDependencies to use oh-my-openagent naming
jq '.optionalDependencies = {
"oh-my-openagent-darwin-arm64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-darwin-x64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-darwin-x64-baseline": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-arm64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-arm64-musl": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-x64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-x64-baseline": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-x64-musl": "${{ steps.version.outputs.version }}",
"oh-my-openagent-linux-x64-musl-baseline": "${{ steps.version.outputs.version }}",
"oh-my-openagent-windows-x64": "${{ steps.version.outputs.version }}",
"oh-my-openagent-windows-x64-baseline": "${{ steps.version.outputs.version }}"
}' package.json > tmp.json && mv tmp.json package.json
TAG_ARG=""
if [ -n "${{ steps.version.outputs.dist_tag }}" ]; then
TAG_ARG="--tag ${{ steps.version.outputs.dist_tag }}"
fi
npm publish --access public --provenance $TAG_ARG || echo "oh-my-openagent publish may have failed (package may already exist)"
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
NPM_CONFIG_PROVENANCE: true
- name: Restore package.json - name: Restore package.json
if: steps.check-openagent.outputs.skip != 'true' if: steps.check.outputs.skip != 'true'
run: | run: |
git checkout -- package.json # Restore original package name
jq '.name = "oh-my-opencode"' package.json > tmp.json && mv tmp.json package.json
trigger-platform: trigger-platform:
runs-on: ubuntu-latest runs-on: ubuntu-latest
+7 -8
View File
@@ -69,14 +69,14 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-bun- ${{ runner.os }}-bun-
# Build local oh-my-opencode # Build local oh-my-openagent
- name: Build oh-my-opencode - name: Build oh-my-openagent
run: | run: |
bun install bun install
bun run build bun run build
# Install OpenCode + configure local plugin + auth in single step # Install OpenCode + configure local plugin + auth in single step
- name: Setup OpenCode with oh-my-opencode - name: Setup OpenCode with oh-my-openagent
env: env:
OPENCODE_AUTH_JSON: ${{ secrets.OPENCODE_AUTH_JSON }} OPENCODE_AUTH_JSON: ${{ secrets.OPENCODE_AUTH_JSON }}
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }} ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
@@ -102,15 +102,14 @@ jobs:
fi fi
opencode --version opencode --version
# Run local oh-my-opencode install (uses built dist) # Run local oh-my-openagent install (uses built dist)
bun run dist/cli/index.js install --no-tui --claude=max20 --openai=no --gemini=no --copilot=no bun run dist/cli/index.js install --no-tui --claude=max20 --openai=no --gemini=no --copilot=no
# Override plugin to use local file reference # Override plugin to use local file reference
OPENCODE_JSON=~/.config/opencode/opencode.json OPENCODE_JSON=~/.config/opencode/opencode.json
REPO_PATH=$(pwd) REPO_PATH=$(pwd)
jq --arg path "file://$REPO_PATH/src/index.ts" ' jq --arg path "file://$REPO_PATH/src/index.ts" '
.plugin = [.plugin[] | select(. != "oh-my-opencode")] + [$path] .plugin = [.plugin[] | select(. != "oh-my-opencode" and . != "oh-my-openagent")] + [$path]
' "$OPENCODE_JSON" > /tmp/oc.json && mv /tmp/oc.json "$OPENCODE_JSON"
OPENCODE_JSON=~/.config/opencode/opencode.json OPENCODE_JSON=~/.config/opencode/opencode.json
jq --arg baseURL "$ANTHROPIC_BASE_URL" --arg apiKey "$ANTHROPIC_API_KEY" ' jq --arg baseURL "$ANTHROPIC_BASE_URL" --arg apiKey "$ANTHROPIC_API_KEY" '
@@ -190,7 +189,7 @@ jobs:
} }
' "$OPENCODE_JSON" > /tmp/oc.json && mv /tmp/oc.json "$OPENCODE_JSON" ' "$OPENCODE_JSON" > /tmp/oc.json && mv /tmp/oc.json "$OPENCODE_JSON"
OMO_JSON=~/.config/opencode/oh-my-opencode.json OMO_JSON=~/.config/opencode/oh-my-openagent.json
PROMPT_APPEND=$(cat << 'PROMPT_EOF' PROMPT_APPEND=$(cat << 'PROMPT_EOF'
<ultrawork-mode> <ultrawork-mode>
[CODE RED] Maximum precision required. Ultrathink before acting. [CODE RED] Maximum precision required. Ultrathink before acting.
@@ -397,7 +396,7 @@ jobs:
--add-label "sisyphus: working" || true --add-label "sisyphus: working" || true
fi fi
- name: Run oh-my-opencode - name: Run oh-my-openagent
env: env:
GITHUB_TOKEN: ${{ secrets.GH_PAT }} GITHUB_TOKEN: ${{ secrets.GH_PAT }}
USER_COMMENT: ${{ steps.context.outputs.comment }} USER_COMMENT: ${{ steps.context.outputs.comment }}