Shrimp Task Manager

repository·main·Indexed 24 days ago

https://github.com/cjo4m06/mcp-shrimp-task-manager

An MCP (Model Context Protocol) server providing AI agents with persistent memory, structured workflows, and intelligent task decomposition for software development. It converts natural language into structured dev tasks with dependency tracking and iterative refinement. Features include a React-based Task Viewer web interface, support for sub-agents, and specialized modes for research and project rule initialization. Compatible with AI clients such as Claude Code, Cline, and Claude Desktop.

Tokens
66.9K
Snippets
113
Records
357
Agent score
79%

What's inside mcp-shrimp-task-manager

  1. Overview of Shrimp Task Manager Viewer

    main

    Shrimp Task Manager Viewer is a modern React-based web interface designed to visualize and manage tasks created via the Shrimp Task Manager MCP (Model Context Protocol) tool. It provides a visual layer over the task data, making it easier to track progress across multiple projects and interact with AI agents.

    Key capabilities include:

    • Visual Task Overview: View all tasks, statuses, dependencies, and progress through a clean tabbed interface.
    • UUID Management: Quickly copy task UUIDs by clicking on task labels, which is useful for prompting AI agents (e.g., "Use the task manager to finish this shrimp: [UUID]").
    • Parallel Operations: Use the AI action column (🤖) to copy task instructions, enabling parallel execution across multiple AI agent sessions in different terminals.
    • Live Updates: The viewer reads files directly to ensure you always see the current task status.
    • Multi-project Support: Manage tasks from different projects using draggable profile tabs.
  2. Overview of Shrimp Task Viewer test categories

    main

    The test suite is organized into four main categories:

    1. Server Tests (test/server.test.js): Validates the Node.js HTTP server, including settings management, API endpoints (/api/agents, /api/add-profile, /api/remove-profile/:id, /api/tasks/:agentId), static file serving, and error handling.
    2. Component Tests (src/test/): React component tests for App, TaskTable, and TaskDetailView covering rendering, user interactions, and state handling.
    3. Integration Tests (test/integration.test.js): Validates full application workflows, such as profile switching and search/filtering across profiles.
    4. Edge Cases (test/edge-cases.test.js): Tests network errors, data integrity (XSS, Unicode), state management (rapid switching), and performance (large datasets).
  3. Overview of Shrimp Task Viewer

    main

    Shrimp Task Viewer is a modern React-based web interface designed for viewing and managing tasks created via the Shrimp Task Manager through the Model Context Protocol (MCP). It provides visual visibility into your task ecosystem when using AI agents like Claude.

    Key capabilities include:

    • Visual Task Overview: View task status, dependencies, and progress through a tabbed interface.
    • UUID Management: Instantly copy task UUIDs by clicking task icons to facilitate commands like "Use the task manager to complete this task shrimp: [UUID]".
    • Parallel Execution Support: Use the AI Actions (🤖) column to copy task instructions, allowing you to run multiple AI agents in parallel across different terminals.
    • Real-time Updates: Direct file path reading ensures the interface reflects the current state of tasks.
    • Multi-project Support: Manage tasks from different projects using draggable profile tabs.
  4. Use the Shrimp Task Viewer to manage tasks

    main

    The Shrimp Task Viewer is a React-based web interface for visualizing and managing tasks created via the Shrimp Task Manager MCP tool. It provides a visual overview of task status, dependencies, and progress, and facilitates interaction with AI agents by providing easy ways to copy task UUIDs and execution instructions.

    Key capabilities include:

    • Visual Overview: View tasks in a clean tabbed interface with status badges (🟡 Pending, 🔵 In Progress, 🟢 Completed, 🔴 Blocked).
    • UUID Management: Click task badges to copy UUIDs for manual AI agent commands.
    • Parallel Execution: Use the AI Action column (🤖) to copy specific instructions for multiple agents simultaneously.
    • Live Updates: Direct file path reading ensures the UI reflects the current task status.
    • Multi-Project Support: Manage tasks across different projects using draggable profile tabs.
  5. Shrimp Task Viewer Features Overview

    main

    The Shrimp Task Viewer provides a professional interface for managing tasks with the following capabilities:

    • Modern Tab Interface: Draggable tabs for reordering profiles and a "+ Add Tab" button for new profiles.
    • Advanced Search & Filtering: Real-time filtering by name, description, status, or ID using TanStack Table, including sortable columns and responsive design.
    • Smart Auto-Refresh: Configurable intervals (5s, 10s, 15s, 30s, 1m, 2m, or 5m) with visual loading indicators.
    • Task Management: Live statistics for Total, Completed, In Progress, and Pending tasks.
    • AI-Powered Agent Assignment: Batch select tasks and use GPT-4 to automatically assign appropriate agents based on task descriptions and agent capabilities. Requires OpenAI API key via central settings or environment variables.
    • Version Control: Automatic Git commits for every change to tasks.json, providing a full audit trail of task edits.
    • Professional UI: Dark theme, responsive layout, and full keyboard/screen reader accessibility.
  6. Key features of Shrimp Task Viewer (v2.1.0)

    main

    The Shrimp Task Viewer provides a visual interface for managing tasks. Recent major features include:

    • Direct File Path Support: Instead of uploading files, you can enter a directory path directly for live updates.
    • Documentation & Release Notes: Dedicated tabs for Markdown-rendered documentation and in-app release notes (with image support).
    • Task Navigation: Clickable dependencies to navigate between related tasks.
    • AI Integration: An 'AI Actions' column allows you to copy instructions for AI agents to complete tasks.
    • UUID Management: Click task badges to copy their UUIDs.
    • Profile Editing: Rename profiles and configure project roots.
    • Modern UI: Browser-style tabbed interface with drag-and-drop reordering, advanced real-time filtering, and sortable columns.
  7. Understand the Chakra UI Theme Structure

    main

    The Shrimp Task Viewer uses a custom Chakra UI theme designed with a dark-first approach. The theme is organized into several key files:

    • index.js: The main theme configuration containing component overrides and semantic tokens.
    • colors.js: Contains color constants and utility functions for color management.
    • validate.js: Utilities for theme validation and testing.
    • README.md: Documentation for the theme.

    The theme provides semantic tokens, component style overrides, and utility functions to ensure a consistent UI across the application.

  8. Understand Profile Data Storage and Task Files

    main

    The Task Viewer uses a hybrid approach for data storage to balance stability and real-time accuracy:

    • Settings File: Profile configurations (tab names, folder paths, tab order) are stored locally in a hidden JSON file: ~/.shrimp-task-viewer-settings.json. This file is automatically created and updated when you add or modify profiles.
    • Task Files: The viewer reads tasks.json files directly from your specified folder paths. It does not upload or copy these files; it simply reads them in real-time, ensuring you always see the current state of your tasks without manual syncing.
    • Hot Reload: In development mode, changes to source code trigger automatic rebuilds and browser refreshes for React components, styles, and server code.
  9. How task dependencies are displayed and navigated

    main

    Task dependencies are rendered using a specific format and utility:

    • Format: Dependencies are displayed in a Task #X format.
    • Generation: Task numbers are generated using the taskNumbering utility.
    • Navigation: Clicking on a dependency link navigates the user directly to the dependent task.
    • Metadata: Hovering over a dependency shows the task's unique identifier (UUID) in a tooltip.
    • Edge Cases:
      • If a task reference is invalid, it displays as Unknown Task.
      • If there are no dependencies, it displays as (em dash).
  10. How template integration works in Shrimp Task Manager

    main

    The Shrimp Task Manager Viewer allows you to edit prompt templates via a web interface, but these changes do not automatically sync to the MCP server for security reasons. The MCP server and the Viewer are separate processes; the MCP server reads configuration once at startup.

    Template Storage Locations

    • Default Templates: src/prompts/templates_en/ (within the main project).
    • Viewer Custom Templates: ~/.shrimp-task-viewer-templates/ (where templates edited via the web UI are stored).
    • MCP Server: Prioritizes environment variables to override default locations.

    Template Flow

    [Web UI Editor] → [~/.shrimp-task-viewer-templates/] → [Export] → [Environment Variables] → [MCP Server]

  11. How Shrimp Task Viewer manages profile and task data

    main

    The Task Viewer uses a hybrid storage model:

    1. Profile Configurations (Settings): Stored in a local JSON file at ~/.shrimp-task-viewer-settings.json. This file tracks tab names, folder paths, and tab ordering. It is automatically updated when you add or modify profiles.

    2. Task Data (Real-time): The viewer does not upload or store copies of your tasks. It reads tasks.json files directly from the folder paths you provide in your profiles. This ensures the UI always reflects the current state of your data on disk.

    3. Git Task History: Task changes are automatically tracked in a separate Git repository located at <shrimp-data-directory>/.git. This allows for auditing and recovery without interfering with your main project's Git history.

  12. Project Architecture and Directory Structure

    main

    The mcp-shrimp-task-manager project is a TypeScript-based task management tool designed for AI Agents. It uses Node.js (ES Modules), Express.js, and Zod.

    Core Directories:

    • src/: Main source code.
      • src/index.ts: Main application entry point or module export point. Use caution when modifying.
      • src/utils/: General utility functions.
      • src/types/: TypeScript type definitions. Ensure consistency with Zod schemas.
      • src/tools/: Project-specific tools or external service integrations.
      • src/models/: Data model definitions (often related to Zod schemas).
      • src/prompts/: AI interaction prompt templates.
      • src/public/: WebGUI or static assets.
      • src/tests/: Unit and integration tests.
    • dist/: Compiled output (generated by tsc). Do not modify manually.
    • data/WebGUI.md: Contains links to the Task Manager UI.

    Configuration Files:

    • package.json: Dependencies and scripts. Run npm install after adding dependencies.
    • tsconfig.json: TypeScript settings. Do not modify "strict": true unless necessary.
    • .env / .env.example: Environment variables. Never commit sensitive info to version control.