Search Service
URL: search.irregulars.io | Source: apps/search-service/
The Search Service provides unified search across the entire IrregularChat ecosystem — wiki pages, Q&A threads, forum discussions, news articles, documentation, and web results. It also powers the MCP (Model Context Protocol) server that lets AI assistants like Claude Code query community knowledge.
Why It Exists
Section titled “Why It Exists”Community knowledge is scattered across 14+ services, a wiki, a forum, Signal groups, and external resources. Without unified search, members have to know which service holds the answer before they can find it. The Search Service solves this by indexing everything and presenting results in one interface.
Features
Section titled “Features”Indexed Sources
Section titled “Indexed Sources”Edge-cached (D1):
- Wiki — Irregularpedia articles
- Q&A — Community questions with answers and confidence scores
- RSS — Curated news with enrichment (rage score, sentiment, entity extraction)
- TIL — “Today I Learned” summaries from Signal messages
- Files — Archived documents with AI summaries
- Outline — Team documentation from Outline wiki
Live callback (via Signal Bot API):
- Chat — Message search across Signal groups with context expansion
- Tasks — Task Exchange entries
- Breakout — Breakout discussion groups
- Web — External results via SearXNG + Brave fallback
Search Tiers
Section titled “Search Tiers”| Tier | Pipeline | Best For |
|---|---|---|
fast | Keyword only + jargon expansion | Quick lookups, known-item search |
all | Keyword + AI orchestration + synthesis | General questions, how-to queries |
deep | All above + query refinement round | Tough questions, research topics |
Four-Phase Intelligent Pipeline
Section titled “Four-Phase Intelligent Pipeline”- Understand — Jargon expansion (e.g. “UAS” → “drone”) + AI orchestrator classifies question type and recommends source weights
- Search — Parallel fanout across all indexed and callback sources
- Expand — Chat context expansion for top hits (retrieves surrounding messages)
- Rank & Synthesize — BM25-style relevance scoring, deduplication, AI-generated answer from top sources
Additional Features
Section titled “Additional Features”- Semantic Search — Vector embeddings (OpenAI) for meaning-based matching, synced hourly from Signal bot PostgreSQL to D1
- Public Endpoint —
/public/searchfor SearXNG-compatible queries (no auth, rate-limited 60 req/min, no AI synthesis) - Manipulation Detection — RSS results include rage scores, sentiment analysis, and entity tags
- Click Analytics — Relevance feedback tracking for search quality improvement
Signal Bot Commands
Section titled “Signal Bot Commands”| Command | Description |
|---|---|
!search <query> | Search across all community content |
!wikiask <question> / !wa | AI-powered Q&A using wiki + synthesis |
!wikiask uses the search service’s semantic search plus AI synthesis to answer questions directly from wiki content.
MCP Server (search-mcp)
Section titled “MCP Server (search-mcp)”The search-mcp package (apps/search-mcp/) exposes 5 tools via Streamable HTTP transport for AI assistants:
| Tool | Description |
|---|---|
search_community | Full AI-guided search with synthesis across all sources |
search_community_fast | Quick keyword search without AI overhead |
search_wiki | Semantic search specialized for wiki (embeddings + keyword) |
search_news | News search with manipulation analysis (rage scores, sentiment) |
search_questions | Browse/search Q&A — find unanswered questions, knowledge gaps |
This enables Claude Code, Cursor, and other MCP-compatible AI assistants to query community knowledge during development sessions.
Integrations
Section titled “Integrations”Signal Bot → Search Service API (query)Community Portal → Search Service (embedded search bar)QA Form → Search Service (search across Q&A content)Search Service → SearXNG (web results)Search Service → Brave Search (fallback)Search Service → Signal Bot API (chat archives)search-mcp → Search Service (MCP wrapper for AI assistants)- Community Portal — Embedded search bar on irregulars.io
- QA Form — Cross-references Q&A content via Search Service
- Signal Bot — Provides
!searchcommand and archives for indexing - SearXNG — Self-hosted metasearch engine for privacy-respecting web results
- search-mcp — MCP protocol bridge for AI assistants
Tech Stack
Section titled “Tech Stack”| Component | Technology |
|---|---|
| Runtime | Cloudflare Workers |
| Framework | Hono |
| Database | D1 (search index) |
| Web Search | SearXNG (primary), Brave Search API (fallback) |
| Auth | API key authentication for bot/service access |