Plan — Project Management
Project Management

Plan

AI-powered kanban board with Claude integration for natural-language task automation

Next.jsPostgreSQLVercel AI SDKdnd-kit
plan.socket.agency
Plan kanban board with drag-and-drop columns

The Challenge

Project management tools either ignore AI entirely or bolt it on as a summarization sidebar. Meanwhile, agency teams need something that understands the owner/client boundary — where clients can request work but can't reorganize the workflow. Existing tools like Jira and Asana treat all users the same, and their AI features can't actually do anything with your tasks.

AI chat interface with task creation tool use

Our Approach

We built Claude as a first-class citizen — not a chatbot, but an executor with database-level tool use. Type "create a task to review mockups, mark it urgent, assign to client" and Claude parses the intent, invokes the createTask tool, and confirms what it did.

Key decisions:

  • Role-gated tools — owners get full CRUD (7 tools), clients get read access plus a restricted createTask that only targets Backlog
  • Position-based ordering — tasks use 1000-gap positions instead of dense indices, so drag reordering only updates the moved task
  • Diff-save messages — chat persistence uses ID-based deduplication, making retries and page reloads idempotent
  • Fire-and-forget title generation — conversation titles generated asynchronously via Haiku after the first message, never blocking the response
Tech Stack

Next.js 15

Full-stack App Router with React Server Components

PostgreSQL + Drizzle

Type-safe schema with position-based task ordering

Vercel AI SDK

Streaming Claude responses with structured tool use

@dnd-kit

Accessible drag-and-drop with pointer sensor and collision detection

Key Features

  • Drag-and-drop kanban with 5 columns (Backlog → Done) and smooth GSAP-like transitions
  • Claude chat with 7 tools — list, get, create, update, delete tasks, status summary, generate report
  • Persistent chat history with auto-generated titles and full message replay
  • Owner/client roles — clients see the board and comment, but can't reorganize or delete
  • Comments and file attachments via Vercel Blob storage
  • Argon2id authentication with JWT sessions — no OAuth complexity for self-hosted deploys

Outcome

Plan proved that AI-native project management works. Teams drag cards when they want precision, type commands when they want speed. The role boundary means clients can request work through natural language ("can you add a task for the logo revision?") without having access to restructure the board. Chat history preserves every decision and AI interaction as a searchable record.