01Run it
Straight from the command's own help.
p202 search breakdown by browserp202 search realtime trafficp202 search dead links --jsonp202 search undo url change02What you get
Captured from the real binary, run against a demo store with 30 days of traffic. Switch tabs to see the same run as JSON, the shape scripts and agents parse.
$ p202 search "profit by campaign" p202 report breakdown — Get stats broken down by a dimension (campaign, traffic source, country, landing page, etc.) matched: --sort accepts total_net (for "profit"); task "campaign performance" try: p202 report breakdown --sort profit --breakdown campaign p202 report crosstab — Two-dimension breakdown (e.g. traffic source × country) for one metric matched: --metric accepts total_net (for "profit"); --cols accepts campaign try: p202 report crosstab --metric profit --cols campaign p202 report groups — Traffic grouped by up to four dimensions, nested, each group with its totals (Group Overview) matched: --sort accepts total_net (for "profit"); --by accepts campaign try: p202 report groups --sort profit --by campaign p202 dashboard — Get dashboard overview — total clicks, conversions, revenue, cost, profit, and ROI for a period matched: task "profit and roi"; flag --aff-campaign-id p202 analytics — Query performance stats grouped by campaign, traffic source, country, etc. (shorthand for report breakdown) matched: --sort accepts profit; --group-by accepts campaign try: p202 analytics --sort profit --group-by campaign
$ p202 search "profit by campaign" --json { "query": "profit by campaign", "terms": [ "profit", "campaign" ], "unknown_terms": [], "good_match": true, "results": [ { "command": "p202 report breakdown", "short": "Get stats broken down by a dimension (campaign, traffic source, country, landing page, etc.)", "score": 0.0325, "coverage": 1, "matched": [ "--sort accepts total_net (for \"profit\")", "task \"campaign performance\"" ], "try": "p202 report breakdown --sort profit --breakdown campaign" }, { "command": "p202 report crosstab", "short": "Two-dimension breakdown (e.g. traffic source × country) for one metric", "score": 0.0318, "coverage": 1, "matched": [ "--metric accepts total_net (for \"profit\")", "--cols accepts campaign" ], "try": "p202 report crosstab --metric profit --cols campaign" }, { "command": "p202 report groups", "short": "Traffic grouped by up to four dimensions, nested, each group with its totals (Group Overview)", "score": 0.0317, "coverage": 1, "matched": [ "--sort accepts total_net (for \"profit\")", "--by accepts campaign" ], "try": "p202 report groups --sort profit --by campaign" }, { "command": "p202 dashboard", "short": "Get dashboard overview — total clicks, conversions, revenue, cost, profit, and ROI for a period", "score": 0.031, "coverage": 1, "matched": [ "task \"profit and roi\"", "flag --aff-campaign-id" ] }, { "command": "p202 analytics", "short": "Query performance stats grouped by campaign, traffic source, country, etc. (shorthand for report breakdown)", "score": 0.0308, "coverage": 1, "matched": [ "--sort accepts profit", "--group-by accepts campaign" ], "try": "p202 analytics --sort profit --group-by campaign" } ] }
$ p202 search "get a tracking link" p202 tracker create-with-url — Create a tracker and return its tracking URL matched: UI page "Setup › Get Links"; task "tracking link" p202 tracker get-url — Get tracking URL for a tracker matched: command name "get-url"; description mentions "tracking"; command name "get-url" (for "link") p202 landing-page code — Print a landing page's tracking code (Setup > Get LP Code) matched: UI page "Setup › Get LP Code"; task "landing page tracking script"; long description mentions "link" p202 tracker get — Get a tracker by ID matched: command name "get"; long description mentions "tracking"; long description mentions "link" p202 campaign get — Get a campaign by ID matched: command name "get"; long description mentions "tracking"; long description mentions "link"
$ p202 search dead links p202 campaign check-urls — Find offer URLs whose host is dead, without sending clicks matched: description mentions "dead"; command name "check-urls" (for "link") p202 report breakdown — Get stats broken down by a dimension (campaign, traffic source, country, landing page, etc.) matched: description mentions "broken" (for "dead"); --breakdown accepts referer_url (for "link") p202 tracker create-with-url — Create a tracker and return its tracking URL matched: task "tracking link" p202 app link — The store link a campaign should send this app's clicks to, and whether a campaign does matched: command name "link" p202 system integrations — The URLs to paste into ClickBank, JVZoo, Zaxaa, Slack and PayKickstart for this install matched: task "clickbank url" (for "link")
03Build your command
Pick values and the command line writes itself, quoted and ready to paste.
p202 searchSet flags below; the command updates as you type.
04Flags
1 flag, plus the global flags every command takes.
| Flag | What it does |
|---|---|
| --limitint · default 5 | Most results to show |
05How it works
Searches every command's name, aliases, description, examples, flags, the values its flags accept, and the tasks it runs: the web UI page that does the same ("Spy", "Update CPC") and the words people use for it ("realtime traffic"). Lists the best matches (5 by default), best first, each with why it matched, the share of your words it matched (coverage) and a command line to try. Plural forms, common synonyms (referrer/referer, offer/campaign, dead/broken, undo/revert, link/url), inflected forms (imported, charged) and split words (real time, real-time) match. Misspellings are not corrected: a word no command mentions is listed above the results (unknown_terms in JSON); the commands lack it or call it something else. No server is contacted.
good_match says whether the first is a confident answer (it matched at least three quarters of your words); a table says so above the list when it is not, and --quiet prints that first command alone, and only for a confident answer, so a script never runs a guess. It fails (exit 1) only when nothing matches, or when the words name a web UI page no command does, and then it says where that is done instead.
Search matches words, not meaning: on 36 tasks as an agent phrased them, written
before this version was measured, the first result was right for 27 and the first
five held the right command for 34. A model reading p202 commands --brief chose
right first for 34: an agent choosing a command does better reading the catalog.
06For agents
Running this from an agent
- Read the same facts as JSON:
p202 commands search --json. - With
AI_AGENT,CLAUDECODEor another agent variable set, output is compact JSON and errors arrive on stderr as a JSON envelope with ahint. - Exit codes: 0 ok, 1 bad input, 2 auth, 3 network, 4 server error, 5 partial failure.
{
"path": "p202 search",
"use": "search <what you want to do>",
"short": "Find the command for a task: ranks commands, flags, flag values and UI pages by your words (offline)",
"long": "Searches every command's name, aliases, description, examples, flags, the values\nits flags accept, and the tasks it runs: the web UI page that does the same (\"Spy\",\n\"Update CPC\") and the words people use for it (\"realtime traffic\"). Lists the best\nmatches (5 by default), best first, each with why it matched, the share of your\nwords it matched (coverage) and a command line to try. Plural forms, common\nsynonyms (referrer/referer, offer/campaign, dead/broken, undo/revert, link/url),\ninflected forms (imported, charged) and split words (real time, real-time) match.\nMisspellings are not corrected: a word no command mentions is listed above the\nresults (unknown_terms in JSON); the commands lack it or call it something else.\nNo server is contacted.\n\ngood_match says whether the first is a confident answer (it matched at least three\nquarters of your words); a table says so above the list when it is not, and\n--quiet prints that first command alone, and only for a confident answer, so a\nscript never runs a guess. It fails (exit 1) only when nothing matches, or when\nthe words name a web UI page no command does, and then it says where that is\ndone instead.\n\nSearch matches words, not meaning: on 36 tasks as an agent phrased them, written\nbefore this version was measured, the first result was right for 27 and the first\nfive held the right command for 34. A model reading `p202 commands --brief` chose\nright first for 34: an agent choosing a command does better reading the catalog.",
"runnable": true,
"example": "p202 search breakdown by browser\n p202 search realtime traffic\n p202 search dead links --json\n p202 search undo url change",
"flags": [
{
"name": "limit",
"type": "int",
"default": "5",
"usage": "Most results to show",
"required": false
}
]
}