EvoX Genesis
EvoX Genesis turns a high-level software objective into a persistent recursive software world: finite-lived agents recursively develop software, while only accepted consequences persist across develop
翻译准备中
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证petstore is an example app that extends the Swagger Petstore API definition (openapi.yaml) with a server, petstore-server, that serves every operation from memory.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗petstore is an example app that extends the Swagger Petstore API definition
(openapi.yaml) with a server, petstore-server, that serves every operation
from memory. Optionally, the server is an AAuth
resource: each operation asks an AI agent for exactly the trust it needs.
go run ./cmd/petstore-server --listen 127.0.0.1:8080
curl 'http://127.0.0.1:8080/v2/pet/findByStatus?status=available'
The store starts with six pets and keeps everything in memory. The spec is
served at /openapi.yaml and /openapi.json, with servers pointing at the
server, so tools that load an OpenAPI document find it there.
With --auth aauth, each operation requires what its x-aauth annotation in
openapi.yaml says:
| Operations | Requires | What the agent does |
|---|---|---|
findPetsByStatus, findPetsByTags, getPetById, getInventory, loginUser, logoutUser | the agent's identity | signs the request with its agent token |
getOrderById, user operations | the person | presents a person token from its person server |
placeOrder, deleteOrder | an auth token for write:orders | asks the person to approve, then presents the auth token |
addPet, updatePet, updatePetWithForm, deletePet, uploadFile | an auth token for write:pets | the same, for write:pets |
Orders belong to the person who placed them: another person's order is not found.
The quickest way to try it is behind the
aauth-go sandbox,
which runs an agent provider and a person server and serves the Petstore as
https://petstore.aauth.test:
aauth-sandbox init
petstore-server --listen 127.0.0.1:8080 --auth aauth \
--url https://petstore.aauth.test \
--trust https://ps.aauth.test \
--ca-file ~/.aauth-sandbox/ca.pem
aauth-sandbox serve --upstream petstore=http://127.0.0.1:8080
| Flag | Meaning |
|---|---|
--auth | none (default) or aauth |
--url | the resource's public URL and AAuth identifier |
--trust | a person server whose tokens to accept (repeatable) |
--ca-file | an extra root CA for fetching issuers' keys, such as the sandbox CA |
--listen | the address to listen on, plain HTTP (default :8080) |
The resource metadata is at /.well-known/aauth-resource.json, with the scope
descriptions a person server shows on its consent page.
To test agents and AAuth implementations against the Petstore, see the interop guide.
docker build -t petstore-server .
docker run --rm -p 127.0.0.1:8080:8080 petstore-server