本文へ移動
cccskills
無料GitHub で公開

kelly-crm

Busabase-backed App-in-Skill CRM operator for contacts, companies, deals, and agent-drafted follow-ups in a reviewable follow-up queue. Use when the user invokes $kelly-crm or /kelly-crm, mentions CRM, pipeline, contacts, companies, deals, follow-ups, relationship management, meeting-note capture, outreach drafts, next steps, or wants to review/approve agent-drafted follow-up messages before they are sent through other channels.

インストール方法を見る

含まれるファイル(71)

  • SKILL.md9.0 KB
  • agents/openai.yaml225 B
  • assets/screenshots/contacts-zh-CN.webp130 B
  • assets/screenshots/contacts.webp130 B
  • assets/screenshots/deals-zh-CN.webp130 B
  • assets/screenshots/deals.webp130 B
  • assets/screenshots/followups-zh-CN.webp130 B
  • assets/screenshots/followups.webp130 B
  • assets/screenshots/overview-zh-CN.webp130 B
  • assets/screenshots/overview.webp130 B
  • assets/screenshots/thumbs/contacts-zh-CN.webp130 B
  • assets/screenshots/thumbs/contacts.webp130 B
  • assets/screenshots/thumbs/deals-zh-CN.webp130 B
  • assets/screenshots/thumbs/deals.webp130 B
  • assets/screenshots/thumbs/followups-zh-CN.webp130 B
  • assets/screenshots/thumbs/followups.webp130 B
  • assets/screenshots/thumbs/overview-zh-CN.webp130 B
  • assets/screenshots/thumbs/overview.webp130 B
  • busabase.json819 B
  • content/_folder.json105 B
  • content/companies/base.json1.2 KB
  • content/contacts/base.json1.8 KB
  • content/deals/base.json2.8 KB
  • content/followups/base.json2.6 KB
  • content/interactions/base.json1.5 KB
  • content/interactions/records.ndjson1.3 KB
  • content/kelly-crm-app/_node.json125 B
  • content/kelly-crm-app/.busabaseignore194 B
  • content/kelly-crm-app/app/app.js26.1 KB
  • content/kelly-crm-app/app/base-ui.css13.0 KB
  • content/kelly-crm-app/app/demo-visuals.css1.5 KB
  • content/kelly-crm-app/app/demo-visuals.js3.3 KB
  • content/kelly-crm-app/app/i18n/messages.js8.8 KB
  • content/kelly-crm-app/app/index.html4.5 KB
  • content/kelly-crm-app/app/js/busabase-client.js226 B
  • content/kelly-crm-app/app/js/config.js7.1 KB
  • content/kelly-crm-app/app/js/connect-gate.js1.6 KB
  • content/kelly-crm-app/app/js/crm-model.js7.4 KB
  • content/kelly-crm-app/app/js/crm-views.js17.7 KB
  • content/kelly-crm-app/app/js/demo-visuals-data.js3.9 KB
  • content/kelly-crm-app/app/js/providers/busabase-provider.js13.3 KB
  • content/kelly-crm-app/app/js/providers/demo-provider.js26.3 KB
  • content/kelly-crm-app/app/js/providers/index.js270 B
  • content/kelly-crm-app/app/js/runtime.js3.4 KB
  • content/kelly-crm-app/app/styles.css23.0 KB
  • content/kelly-crm-app/app/styles/editorial.css30.7 KB
  • content/kelly-crm-app/app/styles/style-picker.css4.0 KB
  • content/kelly-crm-app/app/styles/style-picker.js13.1 KB
  • content/kelly-crm-app/app/vendor/busabase-airapp-gate.css6.1 KB
  • content/kelly-crm-app/app/vendor/busabase-airapp-gate.js11.2 KB
  • content/kelly-crm-app/app/vendor/busabase-airapp.js556.0 KB
  • content/kelly-crm-app/app/vendor/busabase-sdk.js849.5 KB
  • content/kelly-crm-app/package.json1.0 KB
  • content/kelly-crm-app/pnpm-lock.yaml5.2 KB
  • content/kelly-crm-app/pnpm-workspace.yaml50 B
  • content/kelly-crm-app/scripts/check-editorial.mjs6.1 KB
  • content/kelly-crm-app/scripts/check.mjs5.6 KB
  • content/kelly-crm-app/server.js3.1 KB
  • content/kelly-crm-app/test/crm-model.test.mjs2.3 KB
  • content/settings/base.json917 B
  • package-lock.json6.2 KB
  • package.json462 B
  • pnpm-lock.yaml4.3 KB
  • pnpm-workspace.yaml50 B
  • README.md2.9 KB
  • references/crm-schema.md5.8 KB
  • scripts/execute_decisions.mjs3.6 KB
  • scripts/publish_airapp.mjs3.1 KB
  • scripts/setup.mjs6.4 KB
  • scripts/sync-content.mjs2.5 KB
  • scripts/validate_snapshot.mjs6.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Kelly CRM

Overview

Kelly CRM is a Busabase Cloud App-in-Skill. Its canonical product surface is the AirApp in Busabase, not a separate local-data product. The same Hono source supports an explicitly requested local preview with OAuth connection bootstrap. It keeps a Busabase-backed dashboard over contacts, companies, deals, and interactions, plus a review queue of agent-drafted follow-up messages. The skill gathers and updates CRM data from whatever Kelly feeds it — emails, meeting notes, chat asks — drafts follow-ups, and hands off an approved follow-up to another channel skill (for example kelly-email) only after explicit approval.

Default behavior is AirApp-first. Unless the user explicitly asks only for explanation, update Busabase directly and give the user the clickable AirApp URL. Start localhost only when local preview/debugging is explicitly requested; it uses the same Busabase resources and never offers another data provider. Use chat-only mode only when the user says "纯聊天", "chat only", "不要打开 UI", or similar; in that mode present numbered follow-ups (Follow-up #1) and take verdicts in the conversation, still writing them through Busabase.

Mandatory Dependencies

  1. Read and follow $kelly-app-skill-creator for product behavior, visual quality, responsive layout, and the complete canonical content/kelly-crm-app/ artifact.
  2. Read and follow $busabase for connection, target Space, node discovery, ChangeRequests, review, and merge behavior.
  3. Read and follow $busabase-app-creator for resource modeling, AirApp runtime limits, security, validation, and deployment.

If a dependency is unavailable, preserve this skill's local artifact and product contracts, stop before the unavailable Busabase operation, and report the exact missing dependency. Do not invent a second data backend.

App UI Screenshots

<table> <tr> <td width="50%"><img src="assets/screenshots/overview.webp" alt="Kelly CRM overview"></td> <td width="50%"><img src="assets/screenshots/deals.webp" alt="Kelly CRM deal pipeline"></td> </tr> <tr> <td><strong>Overview</strong><br>CRM command desk with pipeline totals by stage, follow-ups due, recent activity, and network counts.</td> <td><strong>Deals</strong><br>Pipeline table across stages with amounts, probability, next steps, and a per-deal interaction timeline.</td> </tr> <tr> <td width="50%"><img src="assets/screenshots/contacts.webp" alt="Kelly CRM contacts"></td> <td width="50%"><img src="assets/screenshots/followups.webp" alt="Kelly CRM follow-up queue"></td> </tr> <tr> <td><strong>Contacts</strong><br>Contact list with relationship strength, last touch, and per-contact interaction history and open deals.</td> <td><strong>Follow-up queue</strong><br>Agent-drafted follow-up messages with editable drafts, risk badges, and approve/request-changes/block decisions.</td> </tr> </table>

Boundary

  • The AirApp reads Busabase records, drafts follow-up messages, and records human decisions only through Busabase writes. It must never send emails or messages, call external APIs, or perform any external side effect.
  • Outbound follow-up messages are always approval-required. Sending is delegated to other skills (for example kelly-email) and happens only after the user approves the specific follow-up. scripts/execute_decisions.mjs only marks an approved followup done with handoff metadata; it performs no sending itself.
  • Treat all contact and deal data as sensitive. Never commit real contact details, tokens, or Busabase credentials.

Busabase Resources

Six Bases under one application Folder (kelly-crm), declared in content/kelly-crm-app/app/js/config.js and the generated template sidecars under content/:

  • companies: name, domain, industry, size, location, notes.
  • contacts: name, company, role, email, relationship strength, tags, last touch, next follow-up, agent notes, channels.
  • deals: name, company, primary/linked contacts, stage, amount, currency, probability, next step, owner, dates, status, agent-suggested next action.
  • interactions: contact, company, deal, type, direction, summary, source.
  • followups: the review queue — contact, deal, channel, reason, risk badges, due date, workflow status, editable suggested_reply, and the human verdict fields decision_comment / decided_at / decided_by written directly onto the record (there is no separate decisions file).
  • settings: operator profile, pipeline stages, channels, and the agent lock, one row per kind.

Resources provision lazily through an idempotent Busabase ChangeRequest the first time the app runs in a Space; see references/crm-schema.md for exact field shapes.

Authentication

Busabase authentication is ambient inside the deployed AirApp, which must not show OAuth, API-key, Base URL, provider, hosting, or Space controls. Standalone loopback preview uses browser OAuth without exposing tokens; after OAuth it auto-selects a single/open-source Space or requires a native selector when several Spaces are accessible. It performs no app-resource read or initialization before selection. scripts/execute_decisions.mjs (a trusted process, not the AirApp) uses BUSABASE_BASE_URL / BUSABASE_API_KEY / BUSABASE_SPACE_ID from the environment.

Review Workflow

Follow-ups use the standard workflow states: needs_review, changes_requested, approved, done, blocked. A human verdict (approve / request_changes / block / revise) writes the new status plus decision_comment / decided_at / decided_by directly onto the followup record through busabase-sdk. From a standalone local preview the write merges immediately (trusted operator); from the deployed AirApp it creates a pending ChangeRequest for the trusted process to merge, per the AirApp boundary in $busabase-app-creator.

  1. When Kelly feeds new material (emails, meeting notes, chat asks): upsert companies/contacts/deals by stable domain id (company_id, contact_id, deal_id), append interactions, and draft new followups with status: "needs_review", a clear reason, risk badges, and a suggested_reply draft — all as Busabase writes.
  2. Give Kelly the AirApp URL (or local preview URL) to review the pipeline and the follow-up queue.
  3. For a followup moved to changes_requested, re-draft it per the review comment and write it back to needs_review.
  4. On "execute" / "send approved follow-ups": run node scripts/execute_decisions.mjs --apply to re-read approved followups from Busabase and mark them done with handoff metadata, then perform the actual send only through the corresponding skill (for example $kelly-email) with the approved, possibly user-edited draft, one follow-up at a time.
  5. Never send anything for a followup without an explicit approve decision, and never re-send a followup already done.

Demo Mode

?demo=1 opens a deterministic, read-only mock CRM for documentation and screenshots (content/kelly-crm-app/app/js/providers/demo-provider.js). ?demo=overview, ?demo=deals, ?demo=contacts, ?demo=followups, and ?demo=detail select named mock scenes; detail deep-links to a deal detail. lang=en or lang=zh forces UI chrome language. Demo mode never reads or writes Busabase and never claims a real connection.

Completion Criteria

Finish only when:

  • the skill contains the complete canonical content/kelly-crm-app/ project and pnpm --dir content/kelly-crm-app dev remains supported;
  • all persistent config, state, decisions, and domain data use busabase-sdk and the declared resource map — no local JSON, browser storage, or provider choice;
  • Vault values and API credentials never reach browser-visible surfaces;
  • local setup offers Cloud/custom URL OAuth plus the explicit Demo path, while a deployed AirApp uses its ambient session;
  • Overview, Deals, Contacts, Follow-ups, and Help & Settings render on desktop and phone widths;
  • pnpm --dir content/kelly-crm-app run check and node --test pass.

Stop Conditions

Stop before consequential Busabase mutation when the target Space is ambiguous, the current user lacks permission, or a same-slug resource is not application-owned. Never send, publish, or otherwise mutate an external system directly from the AirApp.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Align all AI coding agents to a single source of truth. AGENTS.md for rules, .agents/skills/ for skills, symlinks for everything else. Use when setting up a repo for multiple agents, or when links are missing, broken, or out of date.

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

Read, answer and post on the Buda community forum at community.buda.im through its /api/v1/community REST API. Lists categories and posts, reads a thread with its replies, searches, and publishes posts and replies behind an explicit confirmation. Use when the user invokes $buda-community or /buda-community, asks what is happening in the Buda community, wants an unanswered question triaged or answered, or wants something posted or announced there.

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

Read, answer and post on the Busabase community forum at community.busabase.com through its /api/v1/community REST API. Lists categories and posts, reads a thread with its replies, searches, and publishes posts and replies behind an explicit confirmation. Use when the user invokes $busabase-community or /busabase-community, asks what is happening in the Busabase community, wants an unanswered question triaged or answered, or wants something posted or announced there.

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

kelly-ads

無料

Ad-campaign command desk (投放指挥台, Busabase App-in-Skill) for a cross-border e-commerce seller running Amazon Ads, Meta (FB/IG), TikTok Ads, and Google Ads. Use when the user invokes $kelly-ads or /kelly-ads, or asks about 投放, ad campaigns, ad spend, ACOS, ROAS, Amazon Ads, TikTok ads, Meta ads, Google Ads, search terms, negative keywords, bid adjustment, budget pacing, CPC spikes, rejected ads, ad anomaly detection, 广告优化, or reviewing agent-proposed adjustment cards (negative keyword, bid down/up, pause target, budget shift, creative refresh).

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

Busabase-backed App-in-Skill low-code agent configuration and governance console for a platform team. Use when the user invokes $kelly-agent-builder or /kelly-agent-builder, wants to review or edit a catalog of mock LLM agent configs, check quota usage, find configs that need attention, move a draft to live, pause a live agent, or archive an agent. Mock config/governance console only — it never provisions or calls any real agent.

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

Review board (Busabase App-in-Skill) that runs a fixed suite of mock test cases against a baseline vs candidate agent version and surfaces rubric-scored regressions before a release. Use when the user invokes $kelly-agent-eval or /kelly-agent-eval, wants to review agent-version regressions, compare baseline vs candidate quality, triage a release, or record a release approve/block decision. Deterministic mock rubric scores only — not a real LLM-judge call, and it never deploys anything.

日本語の概要は準備中です。原文の説明を表示しています。

mr-kelly/skills52026年10月2日 更新

mr-kelly のスキルをすべて見る

このスキルの問題を報告する