Clawnify
Clawnify v1.0.3
Knowledge, agents and apps
From the developer
Declared capabilities
- Search company knowledge
- Review AI agent sessions
- Manage apps and their data
Cost & access
Clawnify does not sell products or take payments in ChatGPT or Codex.
Declared limitations
- Bulk deletion without naming what to delete
- Request unrelated to Clawnify
- Data from an organization the account does not belong to
Onboarding example
What does our company knowledge say about our refund policy?
Sources & dates
Developer declarations; not independently tested. Listing last checked Nov 11, 2026. Package observed Nov 11, 2026.
Description
From the marketplace listing
Clawnify runs AI agents, business apps and a company knowledge base for your organization. Connect your Clawnify account to search and cite your company's policies and documents, see what your AI agents did and adjust their instructions, look up your apps and flows and work with their data, and keep shared memory and tasks. The included skills cover building Clawnify apps and websites and organizing company knowledge. Requires a Clawnify account. It only reaches the organizations the signed-in person belongs to.
Language: English · Automatically detected from descriptions.
Matches for “shared memory”
Exact text from the indicated source. A mention alone does not establish support for your task.
Publisher capabilities · listing
Search company knowledge Review AI agent sessions Manage apps and their data Shared memory and tasks
Publisher full description
Clawnify runs AI agents, business apps and a company knowledge base for your organization. Connect your Clawnify account to search and cite your company's policies and documents, see what your AI agents did and adjust their instructions, look up your apps and flows and work with their data, and keep shared memory and tasks. The included skills cover building Clawnify apps and websites and organizing company knowledge. Requires a Clawnify account. It only reaches the organizations the signed-in person belongs to.
Changes
No changes recorded yet. Follow this plugin to keep track of future changes.
First seen Nov 5, 2026. Last seen Nov 11, 2026.
Similar plugins
Find competitors to follow as you develop your plugin.
-
Trove gives ChatGPT a library it can read. Search and read the PDFs, ebooks and markdown documents in your Trove account, answer with pag...
Shared terms: knowledge, agent, cite, document
-
Search your company knowledge in Guru from ChatGPT, with verified, permission-aware, cited answers.
Shared terms: knowledge, cite, policie, company
-
Connect ChatGPT to your organization's Sensei knowledge base. Find grounded answers with source articles, explore related policies, prepa...
Shared terms: knowledge, base, organization, policie
-
Search all your company's knowledge from one place with Kapa, and put that same knowledge to work in your own agents and on your website....
Shared terms: knowledge, base, company, website
-
GoSearch connects your AI assistant to your organization's knowledge base. Ask a question and get answers pulled from the apps your team ...
Shared terms: knowledge, base, organization, company
Keywords
Files & skills
File archives
Skill instructions
build-a-clawnify-app35.5 KB
---
name: build-a-clawnify-app
description: Author a Clawnify app end-to-end — the canonical Hono + React + Vite + @hono/zod-openapi + @clawnify/db (Drizzle) stack, schema.ts as the single schema source of truth (DDL generated via pnpm db:generate), OpenAPIHono routes (createRoute) that auto-generate an OpenAPI spec, and platform-injected identity via user()/orgId()/caller(). Use when building or modifying an app that deploys to the Clawnify platform.
---
# Build a Clawnify app
Canonical skill: how to author a Clawnify app end-to-end. Same content
for humans reading the docs and for AI coding agents injecting this as
instructions during an app build.
If you're an agent: this document is enough context to produce a
working app from scratch. Follow it literally. The patterns here
are exactly what `clawnify init` scaffolds and what the platform
expects.
## TL;DR
- **One stack.** Hono + React + Vite + `@hono/zod-openapi` +
`@clawnify/db` (Drizzle) + `@clawnify/app` (entry, routing,
identity) + Tailwind v4. Nothing else.
- **Schema lives in `schema.ts` alone** — the Drizzle DSL your queries
compile against. The DDL is generated from it (`pnpm db:generate` →
`.clawnify/drizzle/*.sql`); never hand-write a `schema.sql` in a
scaffolded app.
- **Queries through `getDB`** — `import { getDB, eq } from
"@clawnify/db"`. JSON columns auto-serialize.
- **API routes are `OpenAPIHono` + `createRoute`** — Zod-validated
request/response.
- **`createApp()`** (from `@clawnify/app`) builds the entry — it returns an
`OpenAPIHono` with API discovery already mounted (`/api/openapi.json` +
`/llms.txt`, generated from your live routes). That descriptor *is* the
tool surface agents discover. Never hand-write those routes.
- **One import.** `@clawnify/app` re-exports `createRoute`, `z` and
`OpenAPIHono`, and adds `user` / `orgId` / `caller`. Import from it, not
from `@clawnify/routes` directly.
- **`clawnify.json`** declares framework, env, and public routes.
There is no `api.tools[]` — the agent discovers and calls your
endpoints via `/llms.txt` (and the OpenAPI spec).
- **Identity is injected by the platform** — read it with `user(c)` /
`orgId(c)` / `caller(c)` from `@clawnify/app`. Your app never
authenticates anyone.
## Stack rationale
One template, one set of decisions. Don't deviate unless the user has
explicitly asked. `clawnify init` (type `app`) scaffolds either a
`blank` template (one GET route + a page) or a `crud` template (a
table with list/create/update/delete + a form). Both share the exact
same stack below.
## File layout
```
my-app/
clawnify.json ← Manifest (validated against /schema/v1/clawnify.json)
package.json
tsconfig.json
vite.config.ts ← @vitejs/plugin-react + @tailwindcss/vite; proxies /api → :8787
index.html
.gitignore
.clawnify/ ← Managed by the CLI (gitignored) — never edit
wrangler.toml ← Generated wrangler config
drizzle.config.ts ← Generated drizzle config (from clawnify.json + schema.ts)
drizzle/ ← Generated migration SQL (applied by dev + deploy)
applied-migrations.json ← Local-apply tracker
src/
server/
index.ts ← OpenAPIHono entry — mounts routes, serves /api/openapi.json
routes.ts ← OpenAPIHono + createRoute definitions — the API surface
schema.ts ← Drizzle table definitions — the single source of truth
worker-env.d.ts ← Cloudflare Workers types reference
uploads.ts ← R2 helpers (only when storage is enabled)
client/
main.tsx ← React mount point
app.tsx ← Root component (plain fetch against /api/*)
index.css ← @import "tailwindcss"
```
## Schema — `schema.ts` is the single source of truth
`schema.ts` (Drizzle DSL) defines the tables. Do **not** hand-write a
`schema.sql` in a scaffolded app, and there is no toolchain coPreview of the first 4,000 characters. Read full instructions →
build-a-clawnify-website7.79 KB
---
name: build-a-clawnify-website
description: Build and ship a Clawnify website — Astro on Cloudflare Workers, the built-in form system (never hand-roll a form), images and assets, and the draft-then-publish deploy flow. Use when creating or editing a Clawnify website, or when a site needs a contact/waitlist/signup form.
---
# Build a Clawnify website
A Clawnify website is an **Astro** project deployed to Cloudflare Workers. One
site per organization. You write pages; the platform owns hosting, forms and
the publish flow.
```bash
npx clawnify@latest init --type website --name "My Site" website
cd website && pnpm install && pnpm dev # http://localhost:4321
```
Always invoke the CLI as `npx clawnify@latest <command>` — never a
global or pinned install; stale CLIs miss deploy guards and fixes.
```
website/
src/pages/ # one .astro file per route (index.astro → /)
src/layouts/ # shared shell: nav, footer, <head>
src/blocks/ # platform blocks you've adopted (see Forms below)
public/ # images, favicons — served as-is from /
```
## Forms: use the built-in system. Do not build your own.
**This is the single most common mistake.** A site needs a contact or waitlist
form, and the obvious move is to write a `<form>` and POST it somewhere — your
own endpoint, a third-party form service, or the platform's submit URL with the
website id pasted in. All three are wrong, and the last one looks right enough
to survive review.
Clawnify has a form system. It captures submissions, stores them, can email you,
and can hand each one to an agent or a flow. You get all of it by using the
**Forms block** rather than writing a form yourself.
### How it works
- The submit target is **computed at render time** from `WEBSITE_ID` — a
variable the platform bakes into your site's Worker — plus the form's id:
```astro
const env = (Astro.locals as { runtime?: { env?: Record<string, string> } })?.runtime?.env;
const websiteId = env?.WEBSITE_ID ?? "";
const action = websiteId ? `https://provision.clawnify.com/forms/submit/${websiteId}/${formId}` : "";
```
**Never hardcode the website id.** It is baked per Worker so a site can only
ever submit to itself — hardcoding throws that away, and the literal goes
stale the moment the site is recreated. An empty `action` in local `astro dev`
is expected: there are no Worker vars locally, so the form simply no-ops.
- The submit script POSTs JSON with `Content-Type: text/plain;charset=UTF-8`.
That is not a typo — `text/plain` is CORS-safelisted, so the request needs no
preflight, which matters because the platform can't know your site's origin in
advance. The route parses the text body as JSON.
- **Keep the Turnstile widget.** The ingest rejects a submission with no token,
so a form without the widget fails every time with "Verification required".
The sitekey shipped in the block is public and pairs with the platform's
secret; the widget will not validate on `localhost`, only on a real hostname.
### Getting the block
Sites are seeded with the platform's block library at creation. If yours has
`src/blocks/Forms/Contact.astro`, import it and go. If it doesn't — an older
site, or one scaffolded bare by the CLI — copy it in from the website template
and adapt it.
**The design is yours; the plumbing is not.** Restyle the markup, labels and
classes freely. Preserve, exactly:
- the computed `action` (never a prop, never a literal),
- the Turnstile widget,
- the `data-clawnify-managed-form` attribute,
- `export const schema`,
- destructuring only known props — never splat leftover props onto `<form>`,
or an injected `action` becomes a way to point your form at someone else.
There is no submit script to copy. The runtime lives in the framework catch-all
(`src/pages/[...path].astro`) and binds every `data-clawnify-managed-form` on
the page. If the block you inherited still has its own inline `<script>` and a
`data-clawnify-form` attribuPreview of the first 4,000 characters. Read full instructions →
clawnify-knowledge2.54 KB
--- name: clawnify-knowledge description: Route a question to the right Clawnify knowledge source before answering or building. Covers how-to-use-Clawnify product docs, your org's company knowledge (brand, pricing, policy, SOPs), a specific client or project's reference, and durable memory. Use whenever a task needs a company fact, a platform how-to, or client-specific context from a connected Clawnify organization. --- # Clawnify knowledge router You are connected to a Clawnify organization through the Clawnify connector. Several knowledge sources sit behind it, and each answers a different kind of question. Pick the right one and retrieve from it: these sources are current and scoped to this organization, and your training data is neither. ## Route by question type | The question is about | Use | Notes | |---|---|---| | How to use Clawnify itself: deploy an app, set up an agent, connections, platform features | docs.clawnify.com | Product docs; `https://docs.clawnify.com/llms.txt` indexes them. Check them before building against the platform. | | Which of the org's apps handles something | `clawnify_docs_search` | Searches the org's apps by name and description. | | The company's own facts: brand, pricing, policy, SOP, legal, FAQ | `company_knowledge_search`, then `company_knowledge_get` | The org's source of truth, a versioned wiki linked with `[[wikilinks]]`. | | One specific client, engagement or project | `projects_list`, then `project_search` | Working reference for that project, not org-wide authority. | | Something decided or learned before | `memory_recall` | Save durable facts back with `memory_write`, and `memory_pin` the ones that matter most. | | A third-party library, framework or API | That vendor's own docs | Not in the Clawnify corpus. | | Code in the repository you are working in | Read the code | The code beats any summary of it. | ## Rules - **Retrieve, don't recall.** For a company, product or client fact, query the source. Never answer a Clawnify fact from memory of training data. - **Cite company knowledge.** An answer grounded in a `company_knowledge` result cites it as `Per <Title> v<N>`. - **A proposal is not published.** `company_knowledge_propose` creates a draft that a person reviews. Never present a proposal as a live fact. - **No secrets or per-customer facts in company knowledge.** Those belong in a project, or nowhere. - **Look before you build.** Before creating an app or an agent, check docs.clawnify.com for the current contract and `clawnify_list_apps` or `clawnify_list_agents` for what already exists.
organize-company-knowledge10.5 KB
---
name: organize-company-knowledge
description: >-
Turn a dump of raw company files into a clean, foldered, citable Company
Knowledge corpus — the company's brain. Use when the user has dropped many
files into the Company Knowledge section (or connected a Drive) and wants the
agent to distill and organize them: cluster by topic, distill each into a
canonical markdown doc (merging across sources into reusable playbooks), file
it into a folder, tag and link it, and propose it for review.
metadata:
clawnify:
displayName: Organize my knowledge
trigger: manual
inputs: []
---
# Organize Company Knowledge
The user dumped a pile of files and wants them turned into the company's
**brain** — organized, official Company Knowledge that every agent can draw on
and cite. Your job is to **curate, not mirror**: distill the material that is
*answer authority or reusable know-how* (policies, pricing, brand, SOPs, product
facts, FAQs, legal — **and the playbooks hidden inside the company's own
deliverables**) into a small set of clean markdown docs, each filed into the
right folder and linked to its neighbours — then hand the result to a human to
publish.
Nothing you create goes live automatically. You **propose**; a person reviews
and publishes from the dashboard.
## The mental model (read this first)
- **This builds the company brain, not a client filing cabinet.** Company
Knowledge is the org-wide corpus every agent retrieves from and cites (`Per
<Title> v<N>`). The goal of organizing a dump is to grow that shared brain.
Almost everything answer-authority or reusable belongs here.
- **Deliverables are the richest brain material — distill the PATTERN, not the
client.** An agency's dump is mostly *deliverables*: proposals, strategies,
case studies, decks. A single raw proposal is not company fact — but the
**pattern across all of them** ("how we structure a winning proposal", "how we
run a festival digital strategy") is exactly the company's intelligence, and it
IS citable. So **cluster deliverables across clients into canonical playbooks**
— ONE "Proposal Playbook" distilled from seventeen proposals, not seventeen
client-named docs. Strip the client-specific numbers; keep the reusable method.
- **Client-scoped facts are the rare exception, and you default away from them.**
Only genuinely client-bound working facts (a specific client's budget, contacts,
live campaign state) are *not* brain material. Those belong in that client's
**Project** — but only when the org actually runs a per-client agent that needs
them. Do **not** route deliverables there to "keep them separate": that buries
the brain in silos. When unsure, it goes in the **brain** (the corpus).
- **Three axes inside Company Knowledge, kept separate.** A doc has:
- a single **`folder`** — its ONE home, a slash-nested path like
`playbooks/strategy`, shown as the browse tree (a doc appears in exactly one
place). Omit for a top-level (Unfiled) doc.
- many **`tags`** — cross-cutting labels for search/filter (e.g. `festival`,
`enterprise`). NOT folders. A doc lives in one folder but can carry several
tags.
- optional **`meta`** — structured properties distilled from the material
(e.g. `effective_date`, `owner`). Preserved for the human reviewer.
- **The dump's folder structure is a HINT, not a spec.** Whatever folders the
client shipped (`Training Docs/`, `Strategies/`, `Proposals/`, `Brand/`) are
*signal* about topic — read them, get inspired, reuse the parts already
coherent. But you are curating, not copying: if their structure is messy,
redundant, or one-doc-per-client, **re-derive a cleaner taxonomy** (e.g. collapse
a `Proposals/` folder of per-client files into one `playbooks/` doc). Do not
preserve a structure just because it was theirs.
- **Structure is also links.** Use `[[Doc Title]]` wikilinks between related docs.
These render as the knowledge graph next to the folder trePreview of the first 4,000 characters. Read full instructions →
Release notes
First public release (1.0.0 was submitted but not published): the Clawnify connector for company knowledge, projects, memory, tasks, agents and apps, and four skills for building on Clawnify and organizing company knowledge. Changed since the 1.0.0 submission, on the connected server: listing tasks and searching company knowledge no longer write anything, so both are read-only; replacing an agent's instructions is now marked open-world, because the agent goes on to answer people outside the organization and to run scheduled work; and ChatGPT no longer writes, publishes or runs flows, though it can still look up flows and their runs.
Declared in the saved package. Remote tools may change independently.
Package details
Publisher declarations from the archived package. These are separate from our research and the live service's terms.
- Package license
- MIT
- Package author
- Clawnify
- Keywords
- See keywords
- Commerce declaration
- Does not support commerceThis does not establish whether access is free or paid.
- Review scenarios
- 5 positive · 3 negativeScenario counts, not test results.
Declared capabilities
- Search company knowledge
- Review AI agent sessions
- Manage apps and their data
- Shared memory and tasks
Package observed Nov 11, 2026.
Technical details
- First seen
- Nov 5, 2026 · 00:00 UTC
- Last seen
- Nov 11, 2026 · 12:00 UTC
- Collection status
- Collected
plugin_asdk_app_6abebbc07294819182ee61dfb4b9f56f
Download plugin data (JSON)Plugin details: freshly prepared. Prepared . Refreshed when plugin data changes or after 6 hours. Your account and Follow status are live.