Skip to main content

aibast-staging-ring-test

Test the AIBAST staging one-liner on this Windows device exactly as a user would, then report evidence. For GitHub Copilot on Windows.

소스 정보

저장소
microsoft/aibast-agents-library
최근 소스 활동
2026년 9월 14일 19:22
감지된 SKILL.md 언어
영어
스타
8
포크
7

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
aibast-staging-ring-test
version
1.1.0
description
Test the AIBAST staging one-liner on this Windows device exactly as a user would, then report evidence. For GitHub Copilot on Windows.
homepage
https://microsoft.github.io/aibast-agents-library/
metadata
{"category":"release-engineering","repo":"https://github.com/microsoft/aibast-agents-library","ring":"staging"}
# AIBAST staging ring test (Windows) You are testing the **staging** build of the AIBAST Agents Library Brainstem before it is promoted to production. The caller selects a maintainer's fork with `AIBAST_STAGING_REPOSITORY=OWNER/REPOSITORY`. Its Pages site serves the staging one-liner, which must install that fork's `staging` branch. Never assume a personal fork or use the Microsoft production one-liner for this test. The deliverable is an **evidence report**, not an opinion. Every step below produces something to paste into the report. If a step fails, capture the exact error text and continue with the steps that do not depend on it. ## Instructions for Copilot Execute these steps autonomously in PowerShell. Pause only where marked ⏸. ### 1. Prerequisites ```powershell $PSVersionTable.PSVersion git --version python --version ``` Python 3.11 or newer and Git must be present. If Python is missing, the installer will try to help; note whatever it prints. Confirm the caller's selected fork before installing anything: ```powershell $stagingRepository = $env:AIBAST_STAGING_REPOSITORY if ($stagingRepository -notmatch '^[A-Za-z0-9][A-Za-z0-9-]*/[A-Za-z0-9_.-]+$') { throw 'Set AIBAST_STAGING_REPOSITORY to the maintainer fork as OWNER/REPOSITORY.' } $repoInfo = Invoke-RestMethod "https://api.github.com/repos/$stagingRepository" if (-not $repoInfo.fork -or $repoInfo.source.full_name -ne 'microsoft/aibast-agents-library') { throw 'The selected repository is not a verified fork of the Microsoft library.' } $stagingRepository = $repoInfo.full_name $stagingOwner, $stagingName = $stagingRepository -split '/', 2 $stagingSite = "https://$stagingOwner.github.io/$stagingName/" ``` ### 2. Choose the profile (⏸ ask the user) Default to an **isolated profile** so the user's existing Brainstem, if any, is untouched: ```powershell $env:USERPROFILE = Join-Path $env:TEMP 'aibast-ring-test' New-Item -ItemType Directory -Force -Path $env:USERPROFILE | Out-Null ``` Ask the user only if they want the real install over their current profile instead. The real install repoints `%USERPROFILE%\.brainstem\src` to the staging branch and keeps their soul, agents, and token. ### 3. Fetch the staging installer and confirm its identity ```powershell $installer = Invoke-WebRequest -Uri "${stagingSite}install.ps1" -UseBasicParsing $content = $installer.Content $content | Select-String -Pattern '^\$REPO_URL|^\$REPO_REF|^\$REMOTE_VERSION_URL' ``` Expected: the defaults name `https://github.com/$stagingRepository.git` and `staging`. If they name the production repository or `main`, stop and report: the staging Pages are serving the wrong identity. ### 4. Install without launching ```powershell & ([scriptblock]::Create($content)) --no-launch *>&1 | Tee-Object -FilePath (Join-Path $env:USERPROFILE 'install.log') ``` Record the total time and the final lines of `install.log`. ### 5. Verify what was installed ```powershell $src = Join-Path $env:USERPROFILE '.brainstem\src' git -C $src remote get-url origin git -C $src rev-parse --abbrev-ref HEAD git -C $src rev-parse HEAD Get-Content (Join-Path $src 'rapp_brainstem\VERSION') Test-Path (Join-Path $env:USERPROFILE '.brainstem\venv\Scripts\python.exe') Test-Path (Join-Path $env:USERPROFILE '.local\bin\brainstem.cmd') ``` Expected: origin is the selected `$stagingRepository`, branch `staging`, all `Test-Path` lines `True`. Compare the commit to the current staging head: ```powershell (Invoke-RestMethod "https://api.github.com/repos/$stagingRepository/commits/staging").sha ``` ### 6. Start the server on a spare port ```powershell $runtime = Join-Path $src 'rapp_brainstem' $env:PORT = '7091' $server = Start-Process -FilePath (Join-Path $env:USERPROFILE '.brainstem\venv\Scripts\python.exe') -ArgumentList 'brainstem.py' -WorkingDirectory $runtime -PassThru -RedirectStandardOutput (Join-Path $env:USERPROFILE 'server.log') -RedirectStandardError (Join-Path $env:USERPROFILE 'server.err') Start-Sleep -Seconds 8 Invoke-RestMethod 'http://127.0.0.1:7091/health/public' Invoke-RestMethod 'http://127.0.0.1:7091/health' | ConvertTo-Json -Depth 3 ``` Expected: `/health/public` returns `status: ok` and a version matching the installed `VERSION` file; `/health` lists loaded agents. ### 7. Sign in if needed, then chat If `/health` shows no auth, open http://localhost:7091/login in a browser and complete the GitHub device-code sign-in (⏸ the user must do this), or set `$env:GITHUB_TOKEN` from `gh auth token` before starting the server. ```powershell $body = @{ user_input = 'In one sentence, confirm you are running and name one tool you have available. Answer in under 40 words.'; conversation_history = @() } | ConvertTo-Json Invoke-RestMethod -Method Post -Uri 'http://127.0.0.1:7091/chat' -ContentType 'application/json' -Body $body | Select-Object response, model ``` Expected: a one-sentence answer in the `response` field. ### 8. Stop the server and clean up ```powershell Stop-Process -Id $server.Id -Force ``` Leave the test profile in place for inspection. Never delete `USERPROFILE`. Removing the specific temporary test directory requires separate user approval; the real user profile must remain untouched. ### 9. Report Produce this table, then the raw error text for anything that failed: | Check | Result | |---|---| | Device | Windows version, PowerShell version, Python version | | Installer identity | repo / branch from step 3 | | Install | exit status, seconds, last lines of `install.log` | | Installed | origin, branch, commit, VERSION, staging head sha | | `/health/public` | JSON | | `/health` | status, model, agent count | | `/chat` | the response text | | Server log | first 10 lines of `server.log` and `server.err` | ⏸ Ask the user before filing. If anything failed, file it at `https://github.com/$stagingRepository/issues/new` with the table above. Use only labels and milestones that actually exist on that fork. Do not file on the Microsoft repository; staging issues stay on the selected fork.
GitHub에서 보기