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

kelly-revshare-simulator

Busabase-backed App-in-Skill control-panel/workspace for a deal analyst to model revenue-based-financing (RBF) deals for SME businesses (retail/F&B chain stores). Use when the user invokes $kelly-revshare-simulator or /kelly-revshare-simulator, wants to model a revenue-share or merchant-cash-advance deal, project cash flow and repayment, compute a Cash-Flow Payout Multiple, effective annualized merchant cost, or compare/underwrite multiple financing scenarios. Pure deterministic math, no external calls, no real trading/payment side effects. Scenario create/edit/delete and the underwriting decision are direct writes made by the analyst, not a review/approval queue.

インストール方法を見る

含まれるファイル(57)

  • SKILL.md11.5 KB
  • agents/openai.yaml268 B
  • assets/screenshots/comparison-zh-CN.webp130 B
  • assets/screenshots/comparison.webp130 B
  • assets/screenshots/overview-zh-CN.webp130 B
  • assets/screenshots/overview.webp130 B
  • assets/screenshots/scenario-detail-zh-CN.webp130 B
  • assets/screenshots/scenario-detail.webp130 B
  • assets/screenshots/thumbs/comparison-zh-CN.webp129 B
  • assets/screenshots/thumbs/comparison.webp129 B
  • assets/screenshots/thumbs/overview-zh-CN.webp129 B
  • assets/screenshots/thumbs/overview.webp129 B
  • assets/screenshots/thumbs/scenario-detail-zh-CN.webp129 B
  • assets/screenshots/thumbs/scenario-detail.webp129 B
  • busabase.json1.2 KB
  • content/_folder.json568 B
  • content/kelly-revshare-simulator-app/_node.json588 B
  • content/kelly-revshare-simulator-app/.busabaseignore194 B
  • content/kelly-revshare-simulator-app/app/accent-theme.css8.0 KB
  • content/kelly-revshare-simulator-app/app/accent-theme.js7.3 KB
  • content/kelly-revshare-simulator-app/app/app.js32.5 KB
  • content/kelly-revshare-simulator-app/app/base-ui.css13.0 KB
  • content/kelly-revshare-simulator-app/app/i18n/messages.js4.7 KB
  • content/kelly-revshare-simulator-app/app/index.html4.7 KB
  • content/kelly-revshare-simulator-app/app/js/busabase-client.js226 B
  • content/kelly-revshare-simulator-app/app/js/config.js4.3 KB
  • content/kelly-revshare-simulator-app/app/js/connect-gate.js1.7 KB
  • content/kelly-revshare-simulator-app/app/js/pagination.js4.6 KB
  • content/kelly-revshare-simulator-app/app/js/providers/busabase-provider.js11.1 KB
  • content/kelly-revshare-simulator-app/app/js/providers/demo-provider.js4.5 KB
  • content/kelly-revshare-simulator-app/app/js/providers/index.js270 B
  • content/kelly-revshare-simulator-app/app/js/runtime.js3.4 KB
  • content/kelly-revshare-simulator-app/app/js/simulator-model.js11.2 KB
  • content/kelly-revshare-simulator-app/app/styles.css17.4 KB
  • content/kelly-revshare-simulator-app/app/styles/editorial.css30.7 KB
  • content/kelly-revshare-simulator-app/app/vendor/busabase-airapp-gate.css6.1 KB
  • content/kelly-revshare-simulator-app/app/vendor/busabase-airapp-gate.js11.2 KB
  • content/kelly-revshare-simulator-app/app/vendor/busabase-airapp.js556.0 KB
  • content/kelly-revshare-simulator-app/app/vendor/busabase-sdk.js849.5 KB
  • content/kelly-revshare-simulator-app/package.json1.1 KB
  • content/kelly-revshare-simulator-app/pnpm-lock.yaml5.2 KB
  • content/kelly-revshare-simulator-app/pnpm-workspace.yaml50 B
  • content/kelly-revshare-simulator-app/scripts/check-editorial.mjs6.1 KB
  • content/kelly-revshare-simulator-app/scripts/check.mjs4.2 KB
  • content/kelly-revshare-simulator-app/server.js3.1 KB
  • content/kelly-revshare-simulator-app/test/simulator-model.test.mjs7.6 KB
  • content/scenarios/base.json2.9 KB
  • content/scenarios/records.ndjson1.8 KB
  • content/settings/base.json815 B
  • package.json302 B
  • pnpm-lock.yaml4.3 KB
  • pnpm-workspace.yaml50 B
  • README.md3.6 KB
  • references/ui-schema.md6.6 KB
  • scripts/publish_airapp.mjs3.1 KB
  • scripts/setup.mjs6.5 KB
  • scripts/sync-content.mjs2.5 KB

SKILL.md(原文)

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

Revenue-Share Contract Simulator

Overview

Kelly Revenue-Share Simulator 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 is a control-panel/workspace for a deal analyst modeling revenue-based-financing (RBF) deals: a funder advances a principal to an SME business (e.g. a bubble tea, gym, or hotpot restaurant chain) in exchange for a share of monthly revenue until a repayment cap multiple is reached or the term ends. The analyst tunes inputs, sees the projected cash flow and cumulative repayment, and records an underwriting decision per named scenario — then saves several scenarios for side-by-side comparison.

This is generic, brand-free tooling: business names in seed data are placeholder archetypes (bubble tea chain, gym chain, hotpot restaurant), not real companies.

This is a direct-manipulation control panel, not a review-then-approve queue: creating, editing, or deleting a scenario, and recording the underwriting decision, are all direct writes made straight through busabase-sdk from the browser — the same way kelly-lead-funnel's kanban stage moves and kelly-agent-builder's agent-config CRUD work. There is no AI-authored draft to approve and no separate execute/decisions step; the projected result (cash_flow_payout_multiple, effective_annual_cost_pct, risk flags) is pure/derived from a scenario's saved inputs and recomputed on every read (content/kelly-revshare-simulator-app/app/js/simulator-model.js, ported from the retired lib/simulate.ts).

Default behavior is AirApp-first. Unless the user explicitly asks only for explanation, 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.

Mandatory Dependencies

  1. Read and follow $kelly-app-skill-creator for product behavior, visual quality, responsive layout, and the complete canonical content/kelly-revshare-simulator-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 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="Revenue-Share Simulator overview"></td> <td width="50%"><img src="assets/screenshots/scenario-detail.webp" alt="Revenue-Share Simulator scenario detail"></td> </tr> <tr> <td><strong>Overview</strong><br>Portfolio-level summary across saved scenarios: average effective cost, flagged deals, and deals still needing an underwriting decision.</td> <td><strong>Scenario detail</strong><br>Cash-flow/cumulative-repayment chart, Cash-Flow Payout Multiple, effective annualized merchant cost, risk flags, and the decision panel.</td> </tr> <tr> <td colspan="2" width="100%"><img src="assets/screenshots/comparison.webp" alt="Revenue-Share Simulator comparison"></td> </tr> <tr> <td colspan="2"><strong>Comparison</strong><br>Side-by-side table of selected scenarios' inputs, projected repayment, payout multiple, effective cost, and decisions.</td> </tr> </table>

Boundary

  • Pure deterministic math over analyst-supplied inputs. The app never fetches live revenue, banking, or payment data, and never disburses, transfers, or moves money.
  • The AirApp reads and writes its own Busabase Bases only; there is no execution/merge step beyond the direct write itself. Deleting a scenario always requires an explicit Busabase review step before it merges (the platform rejects autoMerge on record deletes) — on a standalone local preview the app completes that review+merge itself immediately since the local operator is the trusted actor; from a deployed AirApp the delete request stays pending for a human to review directly in Busabase.
  • Risk flags are neutral, rule-based observations — never automated approve/reject decisions. A human always makes the underwriting call.
  • Generic, brand-neutral tool: never hardcode or reference a specific real company or SME name in code, templates, or docs.

Busabase Resources

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

  • scenarios: one row per saved deal scenario — the analyst's raw inputs (business type, average monthly revenue, revenue volatility, principal, initial and step-down revenue-share rates, repayment cap multiple, term) and the underwriting decision (decision-action, decision-note, decided-at). The projected cash-flow/repayment result (monthly projection, Cash-Flow Payout Multiple, effective annualized cost, risk flags) is never stored — it is pure/derived from these inputs and recomputed on every read.
  • settings: sanitized config (base currency, underwriting policy thresholds), one row keyed by kind.

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

Domain Model

Inputs per scenario (content/kelly-revshare-simulator-app/app/js/simulator-model.js simulateScenario, ported verbatim from the retired lib/simulate.ts):

  • business_type, avg_monthly_revenue, revenue_volatility_pct
  • principal (proposed advance)
  • initial_share_rate_pct (revenue share until breakeven)
  • step_down_share_rate_pct (reduced share rate after principal is recovered)
  • repayment_cap_multiple (e.g. 1.5x principal — the total obligation cap)
  • term_months

Computed, always fresh, never stored:

  • monthly[]: month-by-month revenue, share rate, payment, cumulative repayment, and breakeven/cap flags.
  • cash_flow_payout_multiple: a P/E-like ratio — principal ("price") divided by the annualized repayment cash flow ("earnings"). Lower is faster payback for the funder.
  • effective_annual_cost_pct: the annualized cost implied by paying back total_repayment over the months elapsed, expressed like an APR.
  • risk_flags[]: cap_not_reached, merchant_cost_too_high, high_revenue_volatility, thin_term_buffer — deterministic, rule-based, never automated decisions.

No randomness, no ML — the same scenario input always produces the same result. Read references/ui-schema.md before editing the app or content/kelly-revshare-simulator-app/app/js/simulator-model.js.

Direct Scenario Writes

There is no decisions/approval bucket. Every scenario action writes straight through busabase-sdk from the browser (content/kelly-revshare-simulator-app/app/js/providers/busabase-provider.js):

  • Create / Update: bases.createChangeRequest / records.changeRequest with the analyst's saved inputs.
  • Record underwriting decision: records.changeRequest sets decision-action/decision-note/decided-at directly on the scenario's own record — approve_underwriting, needs_revision, reject, or cleared back to undecided.
  • Delete: records.changeRequest with operation: "delete". Busabase always requires an explicit review before a delete merges (autoMerge is rejected server-side for deletes, unlike create/update) — from a standalone local preview the app reviews and merges its own delete request immediately after submitting it (the trusted local operator approving their own action); from a deployed AirApp the request stays pending for a human to review directly in Busabase.

From a standalone local preview create/update/decision writes merge immediately (trusted operator); from the deployed AirApp they create a pending ChangeRequest for the trusted process to merge, per the AirApp boundary in $busabase-app-creator.

Demo Mode

  • ?demo=1 opens a deterministic, fully offline mock batch of four scenarios (bubble tea chain, gym chain, hotpot restaurant, one deliberately risky example that trips the risk flags) for documentation and screenshots. It never reads or writes Busabase and never claims a real connection; demo create/edit/delete/decision actions only update the in-memory snapshot already rendered in the browser tab.
  • ?demo=scenarios and ?demo=comparison select named mock scenes; ?demo=detail opens the first mock scenario's detail pane.
  • lang=en or lang=zh forces UI chrome language for screenshots.

UI language: support English and Chinese chrome with Auto default.

Local App

Default behavior is AirApp-first — give the user the clickable AirApp URL. Start pnpm --dir content/kelly-revshare-simulator-app dev only when local preview/debugging is explicitly requested.

Views

  • #/overview: portfolio-level metrics and the list of scenarios still needing a decision.
  • #/scenarios: filterable scenario list (All, Undecided, Approved, Needs Revision, Rejected).
  • #/scenarios/new: new scenario input form.
  • #/scenarios/<id>: cash-flow chart, computed metrics, risk flags, editable inputs, the underwriting decision panel, and delete.
  • #/comparison: pick multiple saved scenarios for a side-by-side table.
  • #/settings: sanitized config summary and underwriting policy thresholds.

Completion Criteria

Finish only when:

  • the skill contains the complete canonical content/kelly-revshare-simulator-app/ project and pnpm --dir content/kelly-revshare-simulator-app dev remains supported;
  • all persistent config, state, 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, Scenarios, Comparison, and Help & Settings render on desktop and phone widths;
  • pnpm --dir content/kelly-revshare-simulator-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 fetch live revenue/banking/payment data or move money 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 のスキルをすべて見る

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