Monitoring & Costs — Navigation Structure
Implemented in Group B (plan 16). See
src/shared/constants/sidebarVisibility.ts.
High-Level Navigation
Section titled “High-Level Navigation”The dashboard sidebar (after Group B) has these top-level sections in order:
HomeProvidersCombosAPI KeysSettingsAnalyticsCosts ← NEW (Group B, plan 16)Monitoring ← REORGANIZED (Group B, plan 16)...Costs section (new, level 1)
Section titled “Costs section (new, level 1)”Path prefix: /dashboard/costs/
| Item | URL | Description |
|---|---|---|
| Overview | /dashboard/costs |
Aggregated cost dashboard (moved from Analytics) |
| Pricing | /dashboard/costs/pricing |
Per-model pricing table |
| Budget | /dashboard/costs/budget |
Budget thresholds + alerts |
| Quota Sharing | /dashboard/costs/quota-share |
Quota Share pools + usage |
| Plan Config | /dashboard/costs/quota-share/plans |
Per-provider plan overrides |
Rationale: Pricing, Budget, and Quota Sharing were previously under
Monitoring > Costs Parameters. Moving them to a dedicated top-level section
makes them discoverable without navigating through observability tooling.
Monitoring section (reorganized)
Section titled “Monitoring section (reorganized)”The Monitoring section now has Activity at the top followed by 3 subgroups:
Monitoring├── Activity ← Timeline feed (top-level item)├── Logs group│ ├── Logs (all)│ ├── Proxy Logs│ └── Console Logs├── Audit group│ ├── Audit Log│ ├── MCP Audit│ └── A2A Audit└── System group ├── Health └── RuntimeWhat changed from the old structure
Section titled “What changed from the old structure”| Before | After |
|---|---|
| Activity = tab inside Logs that rendered the Audit Log | Activity = dedicated feed (/dashboard/activity) |
| Costs Parameters group in Monitoring | Moved to Costs section |
| Flat list: Logs, Activity (logs), Audit, Health, Runtime, Pricing, Budget, Quota | Structured 3-group + dedicated Costs section |
Activity vs Audit Log
Section titled “Activity vs Audit Log”These two are now distinct:
| Dimension | Activity (/dashboard/activity) |
Audit Log (/dashboard/audit) |
|---|---|---|
| Purpose | User-facing event feed (“what happened recently”) | Compliance / security log |
| Data source | GET /api/compliance/audit-log?level=high |
GET /api/compliance/audit-log?level=all |
| Format | Timeline, grouped by day, human-readable verbs + icons | Dense paginaged table, 50/page |
| Filters | Event type category | Action, severity, actor, date range |
| Export | Not available | JSON export |
| Actor filter | Not applicable | Filterable by actor |
| Events shown | High-level actions only (allowlist) | All audit events |
High-Level Actions allowlist
Section titled “High-Level Actions allowlist”Defined in src/lib/audit/highLevelActions.ts. Controls which events appear in
the Activity feed. The allowlist includes:
- Provider add/remove/test events
- Combo create/update/delete
- API key lifecycle (create, revoke, rotate)
- Budget threshold reached
- Auth login/logout
- Cloud agent session creation
- MCP tool registration
- Webhook create/delete
- Quota pool/plan changes (
quota.*actions, Group B) - Platform events (update, deploy)
- Skill install/remove
Events not in this list appear only in the Audit Log.
Adding a new high-level action
Section titled “Adding a new high-level action”Edit src/lib/audit/highLevelActions.ts and add the action string to
HIGH_LEVEL_ACTIONS. This requires a PR (the list is code, not DB-configurable).
The corresponding icon can be added to src/lib/audit/activityIcons.ts.
Redirect: /dashboard/logs/activity
Section titled “Redirect: /dashboard/logs/activity”The old path /dashboard/logs/activity is permanently redirected (HTTP 308) to
/dashboard/activity via permanentRedirect() in
src/app/(dashboard)/dashboard/logs/activity/page.tsx.
The legacy sidebar ID logs-activity is preserved in HIDEABLE_SIDEBAR_ITEM_IDS
(but removed from SIDEBAR_DEFINITIONS) to avoid breaking user presets that
reference the old ID.
Namespaces added by Group B:
| Namespace key | Covers |
|---|---|
sidebar.costsSection |
Costs section label |
sidebar.activity |
Activity sidebar item |
sidebar.logsGroup |
Logs subgroup label |
sidebar.systemGroup |
System subgroup label |
sidebar.costsOverview |
Costs overview item |
activity.* |
All Activity page strings (title, verbs, filters, empty state) |
Source-of-truth locales: pt-BR and en. All other 40 locales fall back to
English via the next-intl fallback mechanism (configured in src/i18n/config.ts).
HagiCode
HagiCode is an agentic coding workspace. Rich, convenient UI interactions make planning, agent execution, and project work approachable and easy to navigate, creating an engaging development experience.
Explore an engaging development experience through rich, convenient UI interactions.
- SmartOpenSpec workflows turn intent into an executable path, from proposal to design, tasks, and a shipped change.
- EfficientMulti-agent execution keeps research, implementation, and review moving in parallel, across several repositories and the Agent CLIs you already use.
- InterestingRich, convenient UI interactions make planning, agent execution, and project work approachable and easy to navigate.
Download for Windows
Share HagiCode
Turn ideas into shipped software.
HagiCode is an agentic coding workspace. OpenSpec workflows plan the change, multi-agent execution carries it out, and Hero Scenario makes the long run visible, so ideas become shipped software.
- Smart
- OpenSpec workflows turn intent into a path from proposal to shipped change.
- Efficient
- Multi-agent execution runs research, build, and review in parallel.
- Fun
- Rich UI interactions make planning, agent work, and projects easier to follow.
© 2026 HagiCode | Powered By hagilight-starlight@0.21.0 | Branch: main | Commit: de60bcd | Built:

