@clize/clize 0.35.4 → 0.35.5

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clize/clize",
3
- "version": "0.35.4",
3
+ "version": "0.35.5",
4
4
  "mcpName": "ai.clize/clize",
5
5
  "description": "The real-world capability layer for AI agents — domains, email, deploy, media, SEO/GEO. CLI + MCP.",
6
6
  "keywords": [
@@ -43,8 +43,8 @@ on our own tenant zero, 2026-09): every funded row is a head term — `stretch`
43
43
  `no_volume` / `pre_emergence` cell. Eleven weeks, 45 pages, 0 clicks, and the only cluster with
44
44
  impressions was one Google picked for us. The read is `keywords.byBand` against the ledger's
45
45
  `format` column: if the ledger holds no row your authority can win, placement is not the fix
46
- either — re-derive the ledger toward tool, long-tail and locale cells (§1.2, §7.2) before
47
- pitching a roundup. The counter-evidence sits in the same dogfood: tabledi and kunavo earned
46
+ either — re-derive the ledger toward tool, long-tail and locale cells (§1.2, §7.2), building
47
+ the tools if the site has none, before pitching a roundup. The counter-evidence sits in the same dogfood: tabledi and kunavo earned
48
48
  page-1 positions with zero links, on tool and long-tail pages. Settle it per site with one round
49
49
  of such rows enrolled in `check`, not by argument.
50
50
 
@@ -117,7 +117,7 @@ the cross-product. Mechanical is the point.
117
117
  | Competitor displacement | each competitor brand | `alternative` / `vs <you>` / `pricing` / `review` | `openrouter alternative` |
118
118
  | New-thing window | model / API / spec names released in the last 90 days | `api`, `pricing`, `how to use` | `seedance api pricing` |
119
119
  | Host × capability | each agent host you have actually tested | each thing the product does for it | `openclaw email`, `codex deploy site` |
120
- | Tool × locale | each browser-side tool you can honestly ship | each market you can serve | `hreflang generator` in `ja-JP` |
120
+ | Tool × locale | each browser-side tool you can honestly ship — built, or not built yet (§7.2, deriving the tool set) | each market you can serve | `hreflang generator` in `ja-JP` |
121
121
  | Locale × head term | your two or three head terms | each market you can serve | `de-DE` pricing cluster (price it; §7.2 on whether to build it) |
122
122
 
123
123
  - **Write every cell, then filter.** Filtering while enumerating is recalling again.
@@ -573,7 +573,8 @@ a family generator existed, and tabledi shipped forty in two days from one. Buil
573
573
  before the second page of any family, and never machine-translate a family page.
574
574
 
575
575
  **On a site that already has tools, this round's page count is the locale siblings of the tools
576
- it has**, and the gate is each cell's own SERP (§7.2). Siblings come in two prices. A *format*
576
+ it has**, and the gate is each cell's own SERP (§7.2); a site without tools derives the set
577
+ first (§7.2). Siblings come in two prices. A *format*
577
578
  tool (viewer, merge, split, convert) is one strings entry (tabledi: a `DICT` table in
578
579
  `tools/apps.js`; clize.ai: a `strings.<loc>.mjs`) — ten in a session is ordinary. A *text* tool
579
580
  (duplicates, compare, clean) carries locale semantics — full-width and half-width forms in
@@ -611,6 +612,21 @@ intent row → use-case; tool-intent row → tool page.
611
612
  ### 7.2 Tool pages
612
613
 
613
614
  The one page type where the content *is* the function — and the strongest link asset (§6.1).
615
+
616
+ **A site with fewer than five tools has no multiplier, and inventing the tool set is its first
617
+ production task** — not a product decision to wait for. Three sources, all paid for already or
618
+ free: (1) the sweep (§1.1) — every rival keyword shaped like a calculator, converter, counter,
619
+ checker, estimator or generator; tabledi's teardown found rows.com, formulabot and quadratic
620
+ earn their organic traffic from free calculators, not product pages, and that finding sat in a
621
+ ledger for three days without becoming a rule; (2) the product's own data — a catalog with
622
+ prices is a cost calculator, a limits table is a context-window checker, a media catalog is a
623
+ generation-cost estimator, a list of formats is a converter; every number the product already
624
+ maintains is a tool nobody else can keep current; (3) the neighbours of the tools you have.
625
+ Each candidate gets an English SERP ($0.02) before a line of code; two or three tools per
626
+ session is the honest rate; once the family exists, §7's sibling rule multiplies it by every
627
+ verified market. kunavo, 2026-09-03: two tool URLs, 43 hand-written locale guides, six pages a
628
+ round — the page-type mix set that ceiling, not the process.
629
+
614
630
  Judgment calls that matter:
615
631
 
616
632
  - **Three words are the whole quality bar: free, instant, no signup.** Tool above the fold,
@@ -893,7 +909,7 @@ and on a site with history it hands you free seeds (`gsc.topQueries` / `newQueri
893
909
  | a `rank.movers` row whose impressions collapsed with a flat position, or a `gsc.pages.movers` row with `status` ≠ 200 | **technical round, no keyword work**: restore or redirect the URL, request indexing, re-read next window. Shape B (top of this file) — links and new pages do not fix a dead URL |
894
910
  | `gsc.pages.unseen` rows whose `index` is not indexed | **indexing round**: internal links into them, sitemap `lastmod`, indexing requests; do not judge their keywords until a window after they are indexed. This row is also the batch gate (§7.3 gate 4): last batch mostly indexed → ship the next family; mostly `Crawled - currently not indexed` → no new pages this round, and retire what Google has refused twice |
895
911
  | `rank.pending` non-empty | those words are not measured yet — no branch applies to them this round; do not read their zero as "missed" |
896
- | `authority_limited` | placement only **on that theme** — another page on it will not move it (§6). The label is per keyword, not per site: production continues on every other theme. If every funded theme reads this way, the site is Shape C (top of this file): re-derive the ledger toward tool, long-tail and locale rows before pitching |
912
+ | `authority_limited` | placement only **on that theme** — another page on it will not move it (§6). The label is per keyword, not per site: production continues on every other theme. If every funded theme reads this way, the site is Shape C (top of this file): re-derive the ledger toward tool, long-tail and locale rows before pitching — and a site with no tools builds them first (§7.2) |
897
913
  | `gsc.newQueries` non-empty | mini-discovery: fold them into the matrix, price the new cells, extend the tracked list if they survive the SERP check |
898
914
  | no movers two rounds running | the plan is stale, not slow — back to §1 and re-derive toward new page types; more waiting will not convert a flat line. The placement queue does not gate this: a queue that has waited on a human for two rounds is recorded as `blocked:` and handed over, and production goes on without it — placement is human-gated, building is not, and one must never hold the other (kunavo's four ready pitches held production for seven rounds) |
899
915