Task Exchange
URL: task.irregulars.io | Source: apps/task-exchange/
The Task Exchange is the community’s marketplace for tasks and projects. Think Upwork, but reputation replaces money. Members post tasks, bid on work, and build reputation through successful contributions — creating a currency of trust and demonstrated capability within the community.
Why It Exists
Section titled “Why It Exists”IrregularChat members have diverse skills — from cybersecurity and OSINT to software engineering and hardware fabrication. The Task Exchange matches people who need work done with people who can do it, using reputation instead of payment. This encourages knowledge sharing and makes the community’s collective skills discoverable and actionable.
Features
Section titled “Features”Task Management
Section titled “Task Management”- Task Board — Browse and filter by skill, status, difficulty, project, or assignee
- Difficulty Levels — Micro → Easy → Medium → Hard → Expert
- Status Workflow — Open → Assigned → In Progress → Submitted → Completed/Declined
- Subtasks and Checklists — Break tasks into steps with automatic synchronization
- Child Tasks — Parent-child task hierarchies for complex work
- Skill Tags — Tag tasks with required skills (python, javascript, devops, security, etc.)
Bidding and Reputation
Section titled “Bidding and Reputation”- Proposals — Submit bids with pitch, time estimate, and approach (one bid per person per task)
- Bid Acceptance — Winner locked in, competing bids auto-rejected, task assigned
- Reputation Tiers — Earn through completed work:
- Newcomer → Contributor → Trusted → Expert → Legend
- Profile Visibility — Control whether your reputation profile is visible to task creators
Challenge Mode
Section titled “Challenge Mode”- Competitive Tasks — Multiple workers compete on the same task simultaneously
- Scoring — Winner gets 150% points, met_requirements gets 100%, attempted gets 20%
AI-Assisted Workflows
Section titled “AI-Assisted Workflows”- AI Enhance — GPT-powered description improvement with difficulty, category, and tag suggestions
- Task Split Detection — AI detects when a task contains multiple unrelated items and suggests splitting
- Suggestion Chips — Follow-up prompts for refining task descriptions
- Checklist Extraction — AI parses markdown checklists (
- [ ]) into structured subtasks
Project Management
Section titled “Project Management”- Projects — Multi-board organizational units (e.g., “Security Initiative”)
- Kanban Boards — Visual boards with lists and drag-and-drop task management
- Sprints — Time-boxed iterations with participant tracking and join/leave
Submissions and Review
Section titled “Submissions and Review”- Submission Workflow — Submit work with content/links for review and approval
- File Attachments — Upload evidence and deliverables via R2 storage
- GitLab Webhook — Auto-submission triggered from GitLab pushes
Signal Bot Commands
Section titled “Signal Bot Commands”| Command | Description |
|---|---|
!task | List recent tasks |
!task #123 | View task details |
!task @person instructions | Create task assigned to someone |
!tasks | Browse all open tasks |
!claim #123 | Claim an open task |
!submit content | Submit work for review |
!bid #123 pitch | Place a bid on a task |
!sprints | List active sprints |
!join #sprint-id | Join a sprint |
The bot resolves Signal UUIDs to user accounts via contributor_profile.signal_number.
Integrations
Section titled “Integrations”Signal Bot → Task Exchange API (/api/bot/)Event Service → Task Exchange (event-generated logistics tasks)Field Notes → Task Exchange (follow-up tasks from articles)QA Form → Task Exchange (unanswered questions → tasks)Task Exchange → GitLab (webhook auto-submissions)Task Exchange → Authentik SSO (login, identity)- Signal Bot — Full command suite: create, claim, bid, submit, browse tasks and sprints
- Event Service — Events can generate logistics tasks (setup, teardown, travel coordination)
- Field Notes — Articles can spawn related community tasks for follow-up research
- QA Form — Unanswered questions can be escalated to tasks
- GitLab — Webhook integration for auto-submission from code pushes
Development Direction
Section titled “Development Direction”Major development (2025-2026):
- Linear-inspired UI redesign: sidebar layout, Cmd+K command palette, Inter+JetBrains Mono fonts
- Bidding system with Upwork-style proposals and reputation tracking
- AI Enhance with agentic mode, suggestion chips, task split detection
- Challenge mode for competitive task completion
- R2 file upload/download for task attachments
- Career profiles with skills and reputation display
- Multiple security audit rounds (session fixation, XSS, FTS5 injection, SSRF, prompt injection)
- Fabrication command integration with Signal bot (3D model pipeline)
Database Schema
Section titled “Database Schema”23 tables including:
user_account,contributor_profile— Members with reputation scores, skills, Signal linkingtask,subtask,task_bid,task_skill— Core task and bidding systemsubmission,challenge_submission— Work submission and reviewproject,board,list— Project management hierarchysprint,sprint_participant— Time-boxed work iterationsskill_tag,skill_tag_admin— Managed skill catalog
Many tables use composite primary keys: project_member, sprint_participant, task_skill_tag.
Tech Stack
Section titled “Tech Stack”| Component | Technology |
|---|---|
| Runtime | Cloudflare Workers |
| Framework | Hono |
| Database | D1 (23 tables) |
| Sessions | KV (SESSIONS) |
| Storage | R2 (file attachments) |
| Real-time | Durable Objects + Queues |
| AI | OpenAI API (GPT for task enhancement) |
| Observability | Enabled (Cloudflare analytics) |
| Auth | Authentik OIDC via @irregularchat/shared-utils |