Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/omnimatch-account-info
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/account-info
What's inside
- Skill name
account-info- Description
- Read-only account information. Use the Omnimatch MCP codemode tool to list the user's markets and entities, view inboxes and matches, inspect inbox filters, read subscription plans, and check credit balance / available credit packs. Call codemode with code that invokes codemode.list_my_markets(), codemode.list_my_entities(), codemode.list_inboxes({ entityId }), codemode.list_inbox_matches({ entityId, inboxKey }), codemode.get_match({ matchId, entityId }), codemode.list_plans({ marketId }), codemode.get_my_credit_balance({ marketId }), codemode.list_credit_packs({ marketId }), codemode.get_next_match_discovery({ entityId }), etc. Use when the user asks to view or list their markets, entities, matches, inbox filters, plans, balance, or when their next search runs. Do not use for editing or purchases—use the manage-account or subscription skill for that. When talking to the user, always use real titles (market title, entity title, match/other side name, type title, plan name)—never show IDs.
- License
- MIT
- Instructions
- 42 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Account Info (Read-Only)
Use the **Omnimatch MCP** codemode tool to read the current user's account data ([Cloudflare Codemode](https://developers.cloudflare.com/agents/api-reference/codemode/)). The server exposes only **codemode**: call it with a `code` parameter (async arrow function body) that runs `codemode.list_my_markets()`, `codemode.list_inbox_matches({ ... })`, etc., and returns the result. This skill is **read-only**: list and view only. For updating profiles, filters, plan changes, or match actions, use the **manage-account** skill.
## When to use
- User asks **what markets am I in?** → `codemode.list_my_markets()`.
- User asks **what entities do I have?** → `codemode.list_my_entities()` (across markets) or `codemode.list_market_entities({ marketId })` for one market.
- User asks **show me details for entity X** → `codemode.get_entity({ entityId })` (returns title, type, externalLink, description, criteria, files with summaries, inbox filters, entity query answers if plan allows).
- User asks **what are my matches** or **show matches** → first `codemode.list_inboxes({ entityId })` to see inboxes (priority, liked, all, plus each inbox filter), then `codemode.list_inbox_matches({ entityId, inboxKey })` to load the table for the chosen inbox.
- User asks about **a specific match** → `codemode.get_match({ matchId, entityId })` returns a concise summary (names, contact, suitability summaries, insight answers, overall scores) that explains why you matched; pass `detail: "full"` when you also need the per-category score breakdown with justifications. The actual reachable contact (LinkedIn URL, email) lives in `otherEntityContact` on the response, not in the `contact` column of the inbox row. Use `codemode.view_match_link({ matchId, entityId })` for just the externalLink.
- User asks **why did we match** for one inbox filter, or **what does filter X say for match Y** → `codemode.list_match_inbox_filter_answers({ matchId, entityId })`.
- User asks about **inbox filters** they have → `codemode.list_inbox_filters({ entityId })`.
- User asks about **subscription**, **plans**, or **what features do I have** → `codemode.list_plans({ marketId })`.
- User asks **how many credits do I have**, **what's my balance**, or **am I out of credits** → `codemode.get_my_credit_balance({ marketId })`. For markets that don't charge credits, the tool returns `creditsEnabled: false`—say so briefly.
- User asks **what credit packs can I buy** or **how do I top up** → `codemode.list_credit_packs({ marketId })`. Present packs by name and credit amount; never expose Stripe price ids in user-facing copy. Direct the user to the **subscription** skill (or `topup_credits`) when they want to actually buy.
- User asks **when is my next search**, **when do new matches arrive**, or **when does discovery run** → `codemode.get_next_match_discovery({ entityId })`. Returns `{ scheduled: false }` or `{ scheduled: true, nextRunAt }` (UTC ISO-8601). This only reports the **automatic** schedule; to **trigger a search now**, that's a manage-account action (`discover_matches`), which adds new matches (it does not re-score existing ones).
**When talking to the user:** Always use **real titles**, never IDs. Refer to entities by their **title**, markets by their **market title**, matches by the other side's **title**, types by the **entity type title** (e.g. "job", "candidate"), and plans by **plan name**. Do not show market ID, entity ID, match ID, or Stripe price ID in user-facing messages—use IDs only inside codemode parameters.
## Codemode read-only tools
Call the **codemode** tool with `code` set to an async arrow function body. Inside it, you can use:
- **codemode.list_my_markets()** → `[{ marketId, title, description }]`.
- **codemode.list_my_entities()** → flat `[{ entityId, marketId, marketTitle, title, type, shortDescription }]`.
- **codemode.list_market_entities({ marketId })** → entities in one market.
- **codemode.get_entity({ entityId })** → full profile.
- **codemode.list_inboxes({ entityId })** → built-in inboxes (priority, liked, all) plus filter inboxes (key `query:{filterId}`), each with a count.
- **codemode.list_inbox_matches({ entityId, inboxKey, offset, limit, sortBy, includeRejected, includeLowScores })** → TUI-friendly table: `{ inboxKey, total, offset, columns, rows: [{ matchId, title, yourScore, theirScore, status, contact, updatedAt, locked }] }`. **`contact` is misleading**: it's a tri-state (`"shared" | "pending" | "none"`) that only reflects owner-to-owner mutual contact sharing via `share_my_contact_with_match`. It stays `"none"` even when the matched entity is externally sourced with a public contact (e.g. a `Liaison` carrying a LinkedIn URL). To get the actual reachable contact, call `get_match` and read `otherEntityContact.externalLink` / `.email` / `.name`.
- **codemode.get_match({ matchId, entityId, detail })** → match detail from your entity's perspective. `detail` defaults to `"summary"` (names, contact, suitability summaries, insight answers, overall scores — small, safe to fetch across many matches); pass `detail: "full"` for the per-category score breakdown with justifications (large, fetch one at a time). Score / insight / contact fields are plan-gated; gated values come back as an upgrade-message string. When a match is freshly created or has just been re-evaluated, `yourCriteriaScore`/`theirCriteriaScore` may be `null` and inbox-filter answers may show `computed: false`; **scoring runs asynchronously and can take up to 5 minutes**, so tell the user it's still computing rather than treating null as an error, and don't aggressively poll.
- **codemode.view_match_link({ matchId, entityId })** → just the externalLink (or `{ externalLink: null, locked: true }`).
- **codemode.list_match_inbox_filter_answers({ matchId, entityId })** → per-filter answers with `computed`, `answer`, `outdated`. `computed: false` means the workflow has not produced an answer yet.
- **codemode.list_inbox_filters({ entityId })** → filter list with prompt, strictness, outputFormat.
- **codemode.list_plans({ marketId })** → plans with `planId`, name, description, isFree, isCurrentPlan, price (live from Stripe), features, limits.
- **codemode.get_my_credit_balance({ marketId })** → `{ creditsEnabled: false, message }` when the market doesn't charge credits, else `{ creditsEnabled: true, subscriptionBalance, topupBalance, nextFreeGrantAt }`. `subscriptionBalance` refreshes monthly from the plan; `topupBalance` is purchased credits that don't expire.
- **codemode.list_credit_packs({ marketId })** → `{ creditsEnabled, packs: [{ priceId, name, creditsAmount, price?: { amount, currency } }] }`. `price.amount` is in the smallest unit of the currency (e.g. cents for USD).
- **codemode.get_next_match_discovery({ entityId })** → `{ scheduled: false }` or `{ scheduled: true, nextRunAt }` (UTC ISO-8601 of the next automatic discovery for this entity).
All ids are UUIDs. Do not invent or assume endpoints.From omnimatch/omnimatch-mcp, MIT.
More from omnimatch/omnimatch-mcp
- 0.474score
level-up
omnimatch
Level up a profile by finding the entity to improve, reviewing its inboxes, and either gathering more info (if no decent matches), clarifying uncertainties…
SkillCFreshness: CClaude Code +9 - 0.470score
manage-account
omnimatch
Manage the user's Omnimatch account.
SkillCFreshness: CClaude Code +9 - 0.409score
subscription
omnimatch
View and change the user's subscription plan or credit balance in a market.
SkillDFreshness: DClaude Code +9 - 0.251score
account-briefing
omnimatch
No description from the publisher yet.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 27, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/omnimatch/omnimatch-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from omnimatch
- 0.474score
level-up
omnimatch
Level up a profile by finding the entity to improve, reviewing its inboxes, and either gathering more info (if no decent matches), clarifying uncertainties…
SkillCFreshness: CClaude Code +9 - 0.470score
manage-account
omnimatch
Manage the user's Omnimatch account.
SkillCFreshness: CClaude Code +9 - 0.409score
subscription
omnimatch
View and change the user's subscription plan or credit balance in a market.
SkillDFreshness: DClaude Code +9
Cite this page
account-info skill. Agent Mart. https://agentmart.dev/skills/omnimatch-account-info (last updated 2026-10-24)