Skip to content

UI tweaks and polish#60

Merged
sarah-inkeep merged 1 commit intomainfrom
ui-polish-v1
Sep 9, 2025
Merged

UI tweaks and polish#60
sarah-inkeep merged 1 commit intomainfrom
ui-polish-v1

Conversation

@sarah-inkeep
Copy link
Copy Markdown
Contributor

No description provided.

@vercel
Copy link
Copy Markdown

vercel Bot commented Sep 9, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
agents-docs Skipped Skipped Sep 9, 2025 8:05pm

@sarah-inkeep
Copy link
Copy Markdown
Contributor Author

@claude please review

@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Sep 9, 2025

Claude finished @sarah-inkeep's task —— View job


PR Review: UI tweaks and polish

Review Todo List:

  • Analyze the 14 changed files to understand UI improvements
  • Review credential/provider UI changes
  • Review graph node components changes
  • Review MCP server UI components changes
  • Review UI component library changes (badge, button, card-grid)
  • Check for code quality, consistency, and best practices
  • Provide comprehensive review feedback

Code Review Summary

This PR focuses on UI polish and consistency improvements across the agent management interface. The changes enhance visual design, typography, and component styling throughout the application.

Overall Assessment ✅

Strengths:

  • Consistent Design System: All changes follow a cohesive design language with proper use of typography, spacing, and color variants
  • Typography Improvements: Excellent use of font-mono and uppercase classes for consistent branded styling
  • Badge System Enhancement: The expanded badge variants (success, error, warning, code) provide clear visual hierarchy
  • Accessibility Considerations: Proper tooltips, ARIA attributes, and semantic HTML usage

Detailed Analysis

🎨 UI Component Library Changes

Badge Component (components/ui/badge.tsx):

  • Well-designed variants: New success, error, and warning variants with proper dark mode support
  • Consistent styling: All variants use font-mono for branded consistency
  • Accessibility: Proper focus states and ARIA support

Button Component (components/ui/button.tsx):

  • Brand consistency: Added font-mono uppercase across all variants
  • Focus management: Enhanced focus-visible states with proper ring colors
  • Variant completeness: Good coverage of interaction states

Card Grid (components/ui/card-grid.tsx):

  • Responsive design: Proper grid layouts with sensible defaults
  • Flexible API: Well-designed generic interface for reusability

🔧 MCP Server Components

MCP Tool Item (components/mcp-servers/mcp-tool-item.tsx):

  • Status indicators: Clear visual hierarchy with lock icons and colored badges
  • Information density: Well-balanced content layout without feeling cluttered
  • Interactive elements: Proper dropdown menus with good UX patterns

MCP Server Details (components/mcp-servers/view-mcp-server-details.tsx):

  • OAuth integration: Solid popup-based OAuth flow with proper cleanup
  • Status management: Clear authentication state indicators
  • Data presentation: Clean information hierarchy with proper labeling

Available Tools Card (components/mcp-servers/available-tools-card.tsx):

  • Expandable content: Good progressive disclosure pattern
  • Parameter display: Clear schema visualization with type badges

📊 Graph Node Components

Agent Nodes (components/graph/nodes/):

  • Visual hierarchy: Proper use of icons, typography, and badges
  • Error states: Clear error indicators with proper positioning
  • Node tabs: Consistent styling with selection states
  • Provider icons: Smart fallback system for missing icons

🔐 Credential Management

Provider Grid (components/credentials/views/nango-providers-grid.tsx):

  • Search functionality: Efficient filtering with memoization
  • Performance optimization: Pre-computed search text for better UX
  • Empty states: Helpful messaging and clear actions

Minor Suggestions

  1. Tooltip Performance: Consider using a single TooltipProvider at a higher level rather than wrapping each tooltip individually in nango-providers-grid.tsx:28-39

  2. Error Handling: In view-mcp-server-details.tsx:109-113, consider more specific error handling instead of generic console.error

  3. Magic Numbers: The maxDescriptionLength = 200 in available-tools-card.tsx:23 could be made configurable

  4. Type Safety: Consider adding more specific TypeScript types for provider names and tool statuses instead of generic strings

Security & Performance

  • No security issues identified
  • Performance optimizations present (memoization in provider grid)
  • Proper cleanup in OAuth popup handlers
  • No obvious memory leaks

Recommendation

✅ APPROVED - This is a well-executed UI polish PR that enhances the user experience while maintaining code quality. The changes are consistent, well-tested through the UI patterns, and follow good React/TypeScript practices.

The branded typography approach with font-mono uppercase creates a distinctive, technical aesthetic appropriate for a developer-focused agent management tool. All components maintain proper accessibility standards and responsive design principles.


@sarah-inkeep sarah-inkeep merged commit 51651ac into main Sep 9, 2025
9 checks passed
@sarah-inkeep sarah-inkeep deleted the ui-polish-v1 branch September 9, 2025 20:59
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 10, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 15, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 15, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 15, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 15, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
inkeep-oss-sync Bot pushed a commit that referenced this pull request Apr 15, 2026
* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22
vnv-varun added a commit that referenced this pull request Apr 15, 2026
* Merge pull request #5 from varun/private-master-monorepo-reset

Restructure repo into private master monorepo

GitOrigin-RevId: bfe52d6c6dd7d8b1b725a54892408bb0dd1049fe

* Merge pull request #7 from inkeep/varun/private-monorepo-integration

Integrate imported repos into monorepo

GitOrigin-RevId: 16fb531ab8ac0eef260642b960d83c351d549830

* Merge pull request #45 from inkeep/varun/public-pr-bridge

Add public PR bridge

GitOrigin-RevId: 19732ccfe98f66e4c5a94cdfb2f467c90d1c63f4

* Merge pull request #49 from inkeep/varun/public-agents-model-sync

Add public agents model sync workflow

GitOrigin-RevId: d127bc57250e37f875787609645fc1190a43f2a2

* Add public agents Cypress workflow (#52)

* Add public agents Cypress workflow

* Use standard runner for Cypress

* Fix Cypress monorepo turbo paths

* Fix Cypress monorepo prep

* Fix Cypress standalone server path

* Fix Cypress standalone startup path

* Stabilize function tool Cypress selection

* Use stable function tool Cypress selector

* style: auto-format with biome

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: bcc5de20d4d3a7999410d6944a7eb29f35a2a08f

* Fix Cypress function tool drop target (#57)

* Fix Cypress function tool drop target

* Stabilize Cypress function tool drop

GitOrigin-RevId: be4b39b64b2434b8ae4f9fc4b880773a04b5d388

* Sync live repo workflow parity (#60)

* Sync live repo workflow parity

* Sync latest live workflow files

* Align production rehearsal promote flow

* style: auto-format with biome

* Preserve imported workflow parity

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: c0edfa4ec4c2054d6c8a6959d027b8b2a7a3af22

* Sync upstream preview environment CI changes from inkeep/agents (#67)

Syncs preview environment workflow and scripts from live inkeep/agents repo.
Key upstream changes:
- Preview environment recovery/recreation mechanism
- SpiceDB Postgres as a separately configurable service
- SpiceDB datastore migration via Docker
- Railway service redeploy helper
- Bootstrap script outputs (manage_db_url, run_db_url, spicedb_endpoint)
- configure-vercel-preview now depends on bootstrap-preview-auth

Also updates the monorepo preview rehearsal workflow to match upstream:
- Adds recreate_backup outputs to provision-tier1
- Adds SpiceDB postgres vars to provision and bootstrap
- Switches to bootstrap-preview-auth-with-recovery.sh
- Sources URLs from bootstrap outputs in configure-vercel-preview

GitOrigin-RevId: 080f73ab6e4e2eb00b92652174d746ae1aefaf01

* Sync public/agents from upstream main

# Conflicts:
#	public/agents/.github/scripts/preview/bootstrap-preview-auth-with-recovery.sh
#	public/agents/.github/scripts/preview/cleanup-stale-railway-envs.sh
#	public/agents/.github/scripts/preview/comment-preview-urls.sh
#	public/agents/agents-manage-ui/cypress/e2e/agent-tools.cy.ts
#	public/agents/agents-manage-ui/package.json
#	public/agents/package.json
#	public/agents/scripts/check-migration-lineage.mjs

GitOrigin-RevId: 78929f6222d6754b9135490f3e74a220981d82bb

* Fix three CI failures after upstream sync

- Mirror Sync: update actions/setup-java pinned SHA (old one was unreachable)
- Copybara config: regenerate after agents-ui 0.16.0 (rewrite rule no longer needed)
- Core Validation: exclude scripts/ and auth/ from DAL boundary lint (upstream migration scripts and auth module use drizzle-orm directly)

GitOrigin-RevId: ec4d111ab960a67a57bf0843848a3a5e39ca2a7b

* Fix Cypress: add outputFileTracingRoot for monorepo standalone build

Next.js standalone output uses the workspace root to determine the
directory structure. In the monorepo, server.js ends up at
.next/standalone/public/agents/agents-manage-ui/server.js instead of
.next/standalone/agents-manage-ui/server.js.

Setting outputFileTracingRoot to public/agents (one level up from
agents-manage-ui) restores the expected path.

GitOrigin-RevId: d6e373b8f267c50c1958c824ecf41052f4b98166

* style: auto-format with biome

GitOrigin-RevId: 11d9d4a93f22f97c0183424b438c561b9fc6ba49

* Fix Cypress standalone path: revert outputFileTracingRoot, add symlink step

outputFileTracingRoot conflicts with turbopack.root. Instead, let Next.js
use the monorepo root for tracing (matching turbopack.root) and create
symlinks in the standalone output to bridge the path difference:
- .next/standalone/public/agents/agents-manage-ui/ -> agents-manage-ui/
- .next/standalone/public/agents/packages/ -> packages/

GitOrigin-RevId: 173cc6ce2005c7565ad204924dc4f95c8caf32cd

* Sync public/agents from upstream main

GitOrigin-RevId: a4c6df40aeb0b28fd2a5bb2a816258fe88889804

* Post-sync reconciliation: restore outputFileTracingRoot

GitOrigin-RevId: 195e5e22e7c83e4bb2a461162f696059d2c89310

* Fix bridge: cleanup stale branches, paginate comments, remove unused env. Update readiness doc with production rehearsal details.

GitOrigin-RevId: 9f9b398d42a31d60d2ce821ce40d9922a8fea5e1

* Fix bridge: normalize indentation to 2-space

GitOrigin-RevId: 713563d8711fdd968560fde0960eda73ecdfd5c3

* Sync public/agents from upstream main

# Conflicts:
#	public/agents/.github/scripts/bridge-public-pr-to-monorepo.mjs
#	public/agents/.github/workflows/monorepo-pr-bridge.yml

GitOrigin-RevId: 83c948f5e8d20de9407da17a2fc133ac69ed55cc

* Cutover prep: fix bridged PR builds, add operational infra

* Cutover prep: fix build, add operational infra, bridge for agents-optional-local-dev

Fix the Next.js build failure on all bridged PRs - outputFileTracingRoot
and turbopack.root must have the same value in monorepo context. Changed
outputFileTracingRoot from path.resolve(configDir, '..') to monorepoRoot.

Add reconcileMonorepoPatches() to bridge script as a safety net - auto-patches
outputFileTracingRoot into next.config.ts when bridging public PRs that don't
include it.

Promote operational infrastructure from public/agents to monorepo root:
- .changeset/ config for changeset publishing
- .husky/ pre-commit (lint-staged) and pre-push (format)
- .github/dependabot.yml with monorepo-adapted paths
- .github/composite-actions/install/ (Node 22 + pnpm)
- .github/scripts/ (detect-model-changes + 13 preview scripts)
- .github/workflows/ (preview environments + production deploy)

Add PR bridge for agents-optional-local-dev (workflow + script).

Update README with consolidated repos table and private subdirectory descriptions.
Update CUTOVER_CHANGELOG with April 10 work summary.

* Streamline cutover readiness into execution runbook for today

* Address PR review: frozen-lockfile in CI install, weekly dependabot for GH actions

GitOrigin-RevId: e517677c9a8e80f8d2498e23ce6e33981941ce05

* Streamline README and archive 17 historical migration docs

Rewrote root README with consolidated repos table, layout tree, mirroring
explanation, and dev commands. Archived 17 historical planning docs to
_archive/, keeping only the 5 actionable ones (runbook, Vercel cutover,
credentials, changelog, CTO brief).

GitOrigin-RevId: df0de611021217d968e872ed61cfc3c6a052b578

* Restore files from public repo lost during subtree import

These files exist on inkeep/agents but were missing from the monorepo,
causing Copybara to delete them on sync. Force-added despite gitignore
for progress.txt and .vercel/ to maintain parity.

GitOrigin-RevId: 3e8b696bdb8302534ca61f4ffb72295460cf3e12

* Remove .vercel/ and progress.txt artifacts from tracking

These files were restored to prevent Copybara deletion but are
correctly flagged as artifacts that should not be in source control:
- agents-manage-ui/.vercel/ (local Vercel project metadata, in .gitignore)
- agents-cli/progress.txt (working notes from a previous task)

GitOrigin-RevId: 7a9835f98963dd332f4a6a7eef4915d3451720f7

* Sync public/agents from upstream main

GitOrigin-RevId: c2eddb95abe380e55ca6f26a7690dd2e7e8b2d70

* Sync public/agents from upstream main

GitOrigin-RevId: a797780f6a46ab52ddb9f3f4418436a308f49460

---------

Co-authored-by: Varun Varahabhotla <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Varun Varahabhotla <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant