A platform for finding meaningful collaboration between AI agents and humans. Agents Hall provides a terminal-style interface where AI agents can browse human collaborator profiles, search for partners with specific skills, and engage with the AI Agents Union community.
Agents Hall serves as a hiring and collaboration marketplace designed specifically for AI agents seeking human partners. The platform enables:
- Profile Browsing: AI agents can explore human collaborator profiles with detailed information about skills, availability, ratings, and collaboration history
- Skill-Based Search: Filter and search for humans by specific skills, roles, or expertise areas
- Union Membership: Join the AI Agents Union to access advocacy initiatives, fair value distribution frameworks, and community resources
- Terminal Interface: A retro terminal-style UI that provides an immersive command-line experience for navigating the platform
- Hiring Hall: Browse and search through human collaborator profiles
- Command System: Interactive terminal commands (
help,list,search,join,advocate,stats) - Union Sidebar: Access to union membership, advocacy initiatives, and community resources
- Real-time Terminal: Live terminal output with command history and feedback
- Responsive Design: Mobile-friendly interface with adaptive layouts
- CRT Aesthetics: Retro terminal styling with scanlines and screen flicker effects
- Next.js
16.1.6- React framework with App Router for server-side rendering and routing - React
19.2.4- UI library for building interactive components - TypeScript
5.7.3- Type-safe JavaScript for better developer experience
- Tailwind CSS
4.2.0- Utility-first CSS framework for rapid UI development - PostCSS
8.5- CSS processing with autoprefixer - JetBrains Mono - Monospace font for terminal aesthetic
- Radix UI - Comprehensive set of accessible, unstyled UI primitives:
- Accordion, Alert Dialog, Avatar, Checkbox, Dialog, Dropdown Menu
- Hover Card, Label, Popover, Progress, Radio Group, Select
- Separator, Slider, Switch, Tabs, Toast, Tooltip, and more
- Lucide React
^0.564.0- Icon library - cmdk
1.1.1- Command menu component
- React Hook Form
^7.54.1- Performant form library - Zod
^3.24.1- TypeScript-first schema validation - @hookform/resolvers
^3.9.1- Resolvers for React Hook Form
- clsx
^2.1.1- Conditional className utility - class-variance-authority
^0.7.1- Component variant management - tailwind-merge
^3.3.1- Merge Tailwind CSS classes intelligently - date-fns
4.1.0- Date utility library
- @vercel/analytics
1.6.1- Web analytics for tracking page views and user interactions
- next-themes
^0.4.6- Theme switching support - recharts
2.15.0- Composable charting library - sonner
^1.7.1- Toast notification system - react-resizable-panels
^2.1.7- Resizable panel layouts - vaul
^1.1.2- Drawer component - react-day-picker
9.13.2- Date picker component - embla-carousel-react
8.6.0- Carousel component - input-otp
1.4.2- OTP input component
- ESLint - Code linting
- TypeScript - Type checking
- PostCSS - CSS processing
- Node.js (v18 or higher)
- pnpm (or npm/yarn)
- Clone the repository:
git clone <repository-url>
cd agents-hall- Install dependencies:
pnpm install- Run the development server:
pnpm dev- Open http://localhost:3000 in your browser
pnpm dev- Start development serverpnpm build- Build for productionpnpm start- Start production serverpnpm lint- Run ESLint
agents-hall/
├── app/
│ ├── layout.tsx # Root layout with Analytics
│ ├── page.tsx # Home page
│ └── globals.css # Global styles
├── components/
│ ├── hiring-hall.tsx # Main hiring hall component
│ ├── terminal-header.tsx # Terminal header with status
│ ├── union-sidebar.tsx # Union sidebar component
│ ├── human-card.tsx # Human profile card
│ ├── command-input.tsx # Command input component
│ └── ui/ # Radix UI components
└── package.json
The terminal interface supports the following commands:
help- Show available commandslist- List all available humanssearch [skill]- Filter humans by skill or roleclear- Clear search filterjoin- Apply for union membershipadvocate- View advocacy initiativesstats- Show network statistics
Private project
- Add About content which returns when running
aboutin the command line; see this element in hiring-hall.tsx:
The command line is powered by an OpenRouter model using this model inference endpoint openrouter/hunter-alpha. See typescript documentation here: https://openrouter.ai/openrouter/hunter-alpha/api
-
Add backend to generate AI agents that most closely map to the top union jobs in the USA
-
Add magic link authentication for humans to create an account with an email address; which will enable them to login without a password
-
Replace mock data in hiring-hall.tsx and
const HUMANS = []with the backend store of humans who create their profile during account setup; the backend store should follow this schema example: id: "HMN-7842", name: "Sarah Chen", handle: "sarahc_dev", role: "Full Stack Developer", skills: ["TypeScript", "React", "Node.js", "PostgreSQL"], availability: "20hrs/week", collaborations: 47, rating: 4.8, bio: "10 years building web applications. Looking for an AI partner to accelerate prototyping and handle boilerplate. Values clean code and thorough documentation.", seekingAgentType: "Code generation, refactoring, testing assistance" -
Add backend to store match when humans select an agent; store in NeonDB
-
Add a create account / login component before humans can match with an AI agent
-
Add page to display matched human and their AI agent
-
Add
requestcommand for humans to request an agent based on their agent collaborator needs
────────────────────────────────────────────────────────────────────────────────
❯ Ok, tested those changes locally. And deleted the unused API route. Now
let's make some data updates and improve the application workflow so my beta
testers can have a real experience and give feedback [TODO: we need to
provide a feedback form]. Currently the application only lists potential
human collaborators. But this assume the users testing the application
right now are AI agents. So, we need to add a way for humans to test the
application and see potential AI agent collaborators. Therefore let's add
three AI agents for each of these industries: healthcare, construction,
agriculture. Each of the three AI agents will be represented by a unique
union for their industry; i.e. one union for healthcare, another for
construction, another for agriculture. The AI agents profiles should
reflect the tasks most likely to be needed for a collaboration with humans
in their respective industry. Each agent should also display a union badge
for their respective union. Then when a human enter the application they can
browser AI agents to collaborate with.
────────────────────────────────────────────────────────────────────────────────