Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions src/agent_env/explorer/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,11 +196,11 @@ async def _not_found(request, exc: NotFoundError):

# The five (id, version) collections behind Task/Env/Agent/Universe/Evals Hub.
# Universes Hub reads /artifacts?type=environment_universe — no route of its own.
app.include_router(versioned_router(prefix=f"{API}/artifacts", tag="artifacts", collection="artifacts"))
app.include_router(versioned_router(prefix=f"{API}/envs", tag="envs", collection="envs"))
app.include_router(versioned_router(prefix=f"{API}/tasks", tag="tasks", collection="tasks"))
app.include_router(versioned_router(prefix=f"{API}/agents", tag="agents", collection="a2a_agents"))
app.include_router(versioned_router(prefix=f"{API}/evals", tag="evals", collection="evals"))
app.include_router(versioned_router(prefix=f"{API}/artifacts", tag="artifacts", collection="artifacts", noun="artifact"))
app.include_router(versioned_router(prefix=f"{API}/envs", tag="envs", collection="envs", noun="environment"))
app.include_router(versioned_router(prefix=f"{API}/tasks", tag="tasks", collection="tasks", noun="task"))
app.include_router(versioned_router(prefix=f"{API}/agents", tag="agents", collection="a2a_agents", noun="agent"))
app.include_router(versioned_router(prefix=f"{API}/evals", tag="evals", collection="evals", noun="eval"))
app.include_router(runs_router.router)
app.include_router(objects_router.router)
app.include_router(conversations_router.router)
Expand All @@ -224,12 +224,12 @@ def _health() -> dict:
"runner": get_runner().type,
}

app.get("/health")(_health)
app.get("/health", summary="Health")(_health)

static = static_dir or settings["static_dir"] or packaged_ui_dir()
if not (static and Path(static).is_dir()):
# Serve health at "/" only when no UI is mounted (else the SPA owns "/").
app.get("/")(_health)
app.get("/", include_in_schema=False)(_health)

if static and Path(static).is_dir():
_mount_spa(app, Path(static))
Expand Down
6 changes: 3 additions & 3 deletions src/agent_env/explorer/openapi_docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -207,9 +207,9 @@ def enrich_openapi_schema(schema: dict[str, Any]) -> dict[str, Any]:
"this install — including any added through .agentenv/config.toml."
),
"counts": {
"artifacts": len(primitives["artifacts"]),
"envs": len(primitives["envs"]),
"taskSteps": len(primitives["taskSteps"]),
"artifactTypes": len(primitives["artifacts"]),
"envTypes": len(primitives["envs"]),
"taskStepTypes": len(primitives["taskSteps"]),
"operations": sum(
1
for ops in (schema.get("paths") or {}).values()
Expand Down
10 changes: 6 additions & 4 deletions src/agent_env/explorer/routers/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,13 +100,15 @@ def versioned_router(
prefix: str,
tag: str,
collection: str,
noun: str,
id_field: str = "id",
) -> APIRouter:
"""List / get / versions over one ``(id, version)`` collection (artifacts, envs, tasks,
agents, evals)."""
agents, evals). ``noun`` names the entity in each route's summary, which the Docs nav
lists without its path."""
router = APIRouter(prefix=prefix, tags=[tag])

@router.get("", response_model=PaginatedResponse)
@router.get("", response_model=PaginatedResponse, summary=f"List {noun.title()}s")
def list_items(
limit: int = Query(50, ge=1, le=500),
offset: int = Query(0, ge=0),
Expand Down Expand Up @@ -147,7 +149,7 @@ def list_items(
has_more=offset + len(items) < total,
)

@router.get("/{entity_id}")
@router.get("/{entity_id}", summary=f"Get {noun.title()}")
def get_item(entity_id: str, version: Optional[int] = None) -> dict:
store = docs()
if version is not None:
Expand All @@ -159,7 +161,7 @@ def get_item(entity_id: str, version: Optional[int] = None) -> dict:
raise HTTPException(status_code=404, detail=f"{tag} {entity_id} not found")
return _enrich_universe(doc, store, collection)

@router.get("/{entity_id}/versions")
@router.get("/{entity_id}/versions", summary=f"List {noun.title()} Versions")
def list_versions(
entity_id: str,
limit: int = Query(100, ge=1, le=500),
Expand Down
Binary file modified src/agent_env/explorer/ui/public/android-chrome-192x192.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/agent_env/explorer/ui/public/android-chrome-512x512.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/agent_env/explorer/ui/public/apple-touch-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/agent_env/explorer/ui/public/favicon.ico
Binary file not shown.
12 changes: 1 addition & 11 deletions src/agent_env/explorer/ui/public/favicon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 0 additions & 15 deletions src/agent_env/explorer/ui/public/logos/agent-env-logo.svg

This file was deleted.

1 change: 1 addition & 0 deletions src/agent_env/explorer/ui/public/logos/agentenv-icon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading