pi-ketch 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +37 -25
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -42,13 +42,7 @@ Install Chromium:
42
42
  ketch browser install
43
43
  ```
44
44
 
45
- The command prints a `Configure with:` command containing the installed browser path. Run that command, for example:
46
-
47
- ```sh
48
- ketch config set browser /Users/you/Library/Caches/ketch/browser/chromium-1321438/Chromium.app/Contents/MacOS/Chromium
49
- ```
50
-
51
- Verify the setup:
45
+ The installer prints the exact `ketch config set browser ...` command for the browser it installed. Copy and run that command, then verify the setup:
52
46
 
53
47
  ```sh
54
48
  ketch browser status
@@ -61,36 +55,54 @@ For a known URL, start with a normal `ketch_scrape` call. Ketch fetches the page
61
55
 
62
56
  ### Search backend setup
63
57
 
64
- Once `pi-ketch` is installed, its Ketch tools are the default Pi workflow for web search and URL extraction:
58
+ Web search needs one default backend. Brave is Ketch's default and requires an API key:
59
+
60
+ ```sh
61
+ ketch config set brave_api_key <key>
62
+ ```
65
63
 
66
- - Use `ketch_search` instead of another extension's overlapping web-search tool.
67
- - Use `ketch_scrape` instead of another extension's overlapping page-extraction tool.
64
+ To use another provider by default, select it once in Ketch:
68
65
 
69
- If your Pi setup already enables a competing web-search or web-extraction extension, disable that extension in `~/.pi/agent/settings.json` while keeping it installed. This avoids duplicate tools and conflicting routing instructions; do not uninstall it unless you want to remove it permanently.
66
+ ```sh
67
+ ketch config set backend ddg
68
+ # Other choices: searxng, exa, firecrawl, keenable
69
+ ```
70
70
 
71
- You only need one working search backend to get started:
71
+ Some providers need credentials or a custom URL. Use Ketch's [configuration reference](https://1broseidon.github.io/ketch/) for the current keys and provider requirements rather than adding secrets to Pi settings.
72
72
 
73
- - **Brave**: direct API search with a Brave API key.
74
- - **SearXNG**: self-hosted metasearch through a configured SearXNG URL.
73
+ Check what Ketch can use before opening Pi:
75
74
 
76
- You can use either one as the default backend. Every routine `ketch_search` call must omit `backend`, `multi`, and `allBackends`, using only that single configured default. It should not automatically combine Brave and DuckDuckGo or any other providers. Brave is the simplest direct default; SearXNG adds self-hosted metasearch.
75
+ ```sh
76
+ ketch config
77
+ ketch doctor
78
+ ketch search "test query"
79
+ ```
77
80
 
78
- Federated search is reserved for deeper work. For contested, multi-part, or deep research, `pi-ketch` can set `allBackends: true`. Ketch then uses `--multi=all` to discover and query every search backend it currently considers usable; users and agents do not need to hardcode provider names. An explicit `multi` list remains available only for deeper corroboration or user-requested provider comparisons.
81
+ The operator chooses the backend; the agent normally does not. The bundled skill tells Pi to call `ketch_search` without `backend`, `multi`, or `allBackends`, so routine searches use your configured default. For deep or contested research, the agent may use `allBackends: true` to query every usable provider and fuse the rankings. An explicit `multi` list is reserved for a provider comparison you requested.
79
82
 
80
- Additional search backends—DuckDuckGo, Exa, Firecrawl, and Keenable—are optional. Firecrawl is used here only as an explicit or federated web-search backend; it does not power `ketch_scrape` or `ketch_crawl`.
83
+ If another Pi extension exposes overlapping search or page-extraction tools, disable that extension in `~/.pi/agent/settings.json` to prevent duplicate tools and conflicting routing instructions. You can leave the package installed.
81
84
 
82
85
  ### Full capability setup
83
86
 
84
- For the complete Ketch feature set, configure the backends for the capabilities you want:
87
+ Configure only the surfaces you plan to use. Each row below maps an agent tool to the Ketch service behind it.
88
+
89
+ | Pi tool | Ketch capability | Starts with | Optional setup |
90
+ | --- | --- | --- | --- |
91
+ | `ketch_search` | Web search | Your configured default backend | Add more search providers for federated research. Brave and Firecrawl require API keys. |
92
+ | `ketch_scrape` | Page extraction | Direct HTTP fetching and the local page cache | Install Chromium for JavaScript-rendered pages. |
93
+ | `ketch_crawl` | Bounded site crawling | Direct HTTP fetching and the local page cache | Install Chromium for JavaScript-rendered pages. |
94
+ | `ketch_code` | Public OSS code search | grep.app | Sourcegraph needs no setup. GitHub can use `gh auth login`, `GITHUB_TOKEN`, or Ketch's `github_token`. |
95
+ | `ketch_docs` | Library documentation | Context7 | Set `context7_api_key`; this surface requires a Context7 key. |
96
+
97
+ A practical full setup is:
85
98
 
86
- - Search: one default such as Brave or SearXNG. Configure additional providers only for fallback, explicit comparisons, or `allBackends` deep research.
87
- - Optional federated search: add providers such as Firecrawl when you want them included in multi-backend web searches.
88
- - Public code search: grep.app, Sourcegraph, and GitHub. GitHub search uses the `gh` CLI token when available.
89
- - Library documentation: a Context7 API key for `ketch_docs`.
90
- - JavaScript-rendered pages: the optional Chromium browser setup above.
91
- - Caching: enabled automatically through Ketch's local bbolt cache.
99
+ 1. Configure and test one default search backend.
100
+ 2. Add a Context7 key if you want library documentation.
101
+ 3. Authenticate GitHub if you want GitHub Code Search in addition to grep.app and Sourcegraph.
102
+ 4. Install Chromium if you need rendered pages.
103
+ 5. Add extra search providers only if you expect to use federated research.
92
104
 
93
- Run `ketch doctor` to check every configured surface. A healthy setup reports all applicable checks as `ok`; optional backends without credentials can be left disabled.
105
+ Run `ketch doctor` after changing configuration. It probes configured search providers, code search, Context7, the browser, and the cache. Optional services can remain unconfigured; the tools backed by them will report a precondition error when called.
94
106
 
95
107
  ## What it adds
96
108
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-ketch",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Agent-native web research tools for Pi: multi-backend search, public code search, library docs, scraping, crawling, and browser rendering, powered by Ketch.",
5
5
  "type": "module",
6
6
  "license": "MIT",