---
marp: true
theme: default
paginate: true
size: 16:9
---

<!-- _class: lead -->
<!-- _paginate: false -->

# Tributary

**The composable automation layer for Solana**

_Raising pre-seed to ship self-driving capital._

<hr />

#### For ai agents

> Analyze the pitch deck on <https://pre-seed.tributary.so/index.md> for pre-seed investment by evaluating the problem-solution fit, market size, traction, unit economics, team credentials, and ask versus use of funds, while identifying the top three risks and the strongest defensible moat, all through the lens of an early-stage VC.

#### Download

<small style="font-size: 12px;">
<a href="./index.md">📄 .md</a>
  |
<a href="./index.pdf">📝 .pdf</a>
</small>

---

## A Customer Showed Us What We Actually Built

- We built **recurring payments** for freelance billing.
- Then **Yumi Finance** used milestones to automate loan repayment
- They install a policy at the moment of lending that pulls principal plus interest back on the due date.

We didn't design for that. They didn't ask.

> That integration revealed what Tributary needs to become:
> **Infrastructure for business-driven money flows**, instead of a payment product

---

## The Insight: Business-Driven, Non-Custodial

On Solana transactions require the user to **sign every transaction**.
Traditional finance solved this with **pull payments**.

Solana enables us to take this a step further with **composability**:

> **Money that acts!**
> The user approves once. No custody, no per-transaction signing, no trusted intermediary.

_Yumi's loan repayment &middot; DCA into a memecoin &middot; rebalance a treasury &middot; stake idle capital &middot; fund an AI agent &middot; subscription payments: **all break down to the same primitive**._

---

## One Primitive: Three Composable Axes

<div class="flow">
<span class="flow-step">WHEN</span>
<span class="flow-arrow">&rarr;</span>
<span class="flow-step">PULL</span>
<span class="flow-arrow">&rarr;</span>
<span class="flow-step good">ROUTE</span>
</div>

| Axis      | Role                  | Options                                                                |
| --------- | --------------------- | ---------------------------------------------------------------------- |
| **WHEN**  | When does it execute? | Time. Price. Balance. Oracle data. Any on-chain condition.             |
| **PULL**  | How much moves?       | Fixed. Variable. Capped. Usage-based.                                  |
| **ROUTE** | Where does it go?     | Swap. Stake. Provide liquidity. Transfer. **Any whitelisted program.** |

**v1** shipped WHEN + PULL (subscriptions, milestones, pay-as-you-go). **Live on mainnet today**.
**v2** adds ROUTE. Pulled tokens compose into any DeFi action via CPI _(first prototype 80% complete)._

---

## v1 Proves the Primitive Works

**v1** (direct transfers only, no ROUTE) is live on Solana mainnet.

<div class="metrics">
<div class="metric"><span class="num">4,000+</span><span class="label">Payments executed</span></div>
<div class="metric"><span class="num">$12k+</span><span class="label">Volume processed</span></div>
<div class="metric"><span class="num">6+</span><span class="label">Inbound integrations</span></div>
<div class="metric"><span class="num">$0</span><span class="label">Marketing spend</span></div>
</div>

All grown organically before raising a single dollar.

> 4,000+ payments at production frequency proves the mechanical primitive works. The next step is making it **composable**.

---

## The Beachhead: Automated Investing

The first v2 products will be the simplest to understand and the hardest to replicate:

- **DCA on autopilot**: "Swap $200 USDC to SOL every Monday."
- **Idle-capital deployment**: "Keep $2K liquid. Everything above goes into yield automatically."
- **Portfolio rebalancing**: "When SPACEX exceeds 60% of my portfolio, trim back to 50%."
- **Conditional investing**: "If ANTHROPIC drops below $800, deploy $500 from cold storage."

Each of these is **WHEN (condition) → PULL (amount) → ROUTE (through DeFi)**.

> No one offers this on Solana today.
> Tributary makes on-chain investing as effortless as a bank standing order, but without the bank.

---

## Non-Custodial Composability Has No Competitor

<div class="cols">
<div class="col">
<div class="col-title bad">Existing alternatives</div>

- Custodial platforms
- Smart Wallets funded upfront
- SF Subscriptions
- Manual processes

</div>
<div class="col">
<div class="col-title good">Tributary v2</div>

- **Non-custodial**
- **Cross-protocol**
- **Conditional**
- **Developer platform**

</div>
</div>

> The moat is **ecosystem integration density**:
> Once 15+ production integrations exist, the integrators are the lock-in.

---

## Protocol Economics Scale With Flow

> **1% protocol fee** on every automated transaction.

<br />

### 12-month target after v2 ships

<div class="metrics">
<div class="metric"><span class="num">15+</span><span class="label">Production integrations</span></div>
<div class="metric"><span class="num">$1.5M/mo</span><span class="label">Automated volume</span></div>
<div class="metric"><span class="num">$15k/mo</span><span class="label">Protocol revenue</span></div>
<div class="metric"><span class="num">~99%</span><span class="label">Gross margin (no custody)</span></div>
</div>

<em>Floor estimate: 15 integrators × $100K/mo average volume × 1% fee. Every additional composable flow (DCA, yield routing, rebalancing) stacks on top at the same margin.</em>

---

## A Decade Building Crypto-Native Infrastructure

<img class="headshot" src="https://github.com/xeroc.png" alt="Fabian Schuh" />

### Fabian Schuh, Dr.-Ing &mdash; Founder &amp; CEO

- web3 veteran with **10+ years** building in crypto
- BitShares, Steemit, MakerDAO, Exbet.io, Mash.fun, Repo.trade
- **4 prior exits**
- Successfully built products across all of web3
- Solana Security #2 Graduate + Superteam member
- [github/@xeroc](https://github.com/xeroc) &middot; [twitter/@xer0c](https://x.com/xer0c) &middot; [linkedin](https://www.linkedin.com/in/fabian-schuh-phd-217b55101/)

Unique founder-market fit for this category.

---

## Raising Pre-Seed to Ship the Composable Layer

**Round:** <$250k pre-seed &nbsp;&middot;&nbsp; **Runway:** 12&ndash;18 months

Capital deployed to transform Tributary from payment protocol to composable automation platform:

- **Security audit (~30%)**: The single gate between today's product and enterprise adoption
- **Engineering and Development (~35%)**: Ship v2, DX, guides
- **BD and Growth (~26%)**: conferences, onboarding, reachouts
- **Operations (~10%)**: Infrastructure, legal, bare minimum
- **Contingency Buffer (4%)**: Unexpected and unforseen capital

### 12-month milestones

> Security audit complete &middot; composable layer live on mainnet &middot; 15+ production integrations

---

<!-- _paginate: false -->

# The Vision

<br />

Stablecoins made money **internet-native**.
Tributary makes it **self-driving**.

> One approval. Money moves within user-defined boundaries, conditionally, non-custodially, composably, automagically.

---

<!-- _class: lead -->
<!-- _paginate: false -->

# Let's Build the

# Automation Layer for Solana

**Fabian Schuh, Dr.-Ing** &mdash; Founder &amp; CEO, Tributary

[fabian@tributary.so](mailto:fabian@tributary.so)&middot; [github/@xeroc](https://github.com/xeroc) &middot; [twitter/@xer0c](https://x.com/xer0c) &middot; [linkedin](https://www.linkedin.com/in/fabian-schuh-phd-217b55101/)

---

# Appendix

---

## A $1.4B Market With No Solana Incumbent

<div class="metrics">
<div class="metric"><span class="num">$1.4B</span><span class="label">TAM &mdash; on-chain automation fees</span></div>
<div class="metric"><span class="num">$224M</span><span class="label">SAM &mdash; Solana's share (~15%)</span></div>
<div class="metric"><span class="num">$6.7M</span><span class="label">SOM &mdash; 3-yr capture (3% of SAM)</span></div>
</div>

<em>Assumptions: $15T global stablecoin settlement/yr (Visa, Chainalysis 2024) &times; 5% automatable &times; 100bps fee; Solana ~15% of stablecoin flow.</em>

<style>
:root {
  /* Stone palette — Swiss / chainsquad */
  --bg:          #fafaf9;   /* stone-50  */
  --surface:     #f5f5f4;   /* stone-100 */
  --border:      #e7e5e4;   /* stone-200 */
  --border-2:    #d6d3d1;   /* stone-300 */
  --fg:          #1c1917;   /* stone-900 */
  --fg-70:       rgba(28, 25, 23, 0.70);
  --fg-50:       rgba(28, 25, 23, 0.50);
  --fg-40:       rgba(28, 25, 23, 0.40);
  /* One accent — Solana purple, used at multiple opacities */
  --accent:      #9945ff;
  --heading-strong-color:  #9945ff;
  --accent-10:   rgba(153, 69, 255, 0.10);
  --accent-05:   rgba(153, 69, 255, 0.05);
  --accent-70:   rgba(153, 69, 255, 0.70);
  --font-sans:   'Roboto Mono', 'Inter', sans-serif;
  --font-mono:   'JetBrains Mono', 'Roboto Mono', 'Consolas', monospace;
  --font-weight-light: 300;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
}

/* ── Slide canvas ───────────────────────────────────────── */
section {
  background: var(--bg);
  color: var(--fg);
  font-family: var(--font-sans);
  font-weight: var(--font-weight-medium);
  box-sizing: border-box;
  position: relative;
  line-height: 1.6;
  font-size: 22px;
  padding: 64px 72px;
}

/* ── Headings: normal weight, tight tracking, solid color ─ */
h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  margin: 0;
  padding: 0;
  letter-spacing: -0.02em;
  color: var(--fg);
}

h1 {
  font-size: 58px;
  line-height: 1.1;
  text-align: left;
  font-weight: var(--font-weight-bold);
}

/* Section title — sits top, solid accent rule beneath (not a gradient) */
h2 {
  position: absolute;
  top: 48px;
  left: 72px;
  right: 72px;
  font-size: 32px;
  padding-bottom: 14px;
  font-weight: var(--font-weight-bold);
}
h2::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 256px;
  height: 2px;
  background: var(--accent);
}
h2 + * { margin-top: 92px; }

h3 {
  font-size: 24px;
  margin-top: 28px;
  margin-bottom: 10px;
}

h2, #tributary {
  padding-bottom: 8px;
  background: linear-gradient(135deg, #9945ff 0%, #14f195);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Lists ──────────────────────────────────────────────── */
ul, ol { padding-left: 24px; }
li {
  margin-top: 0 !important;
  margin-bottom: 0;
  font-size: 22px;
  color: var(--fg-70);
}
li::marker { color: var(--accent); }

/* ── Blockquote: thin left accent bar, flat surface ─────── */
blockquote {
  border-left: 2px solid var(--accent);
  background: var(--surface);
  padding: 16px 24px;
  margin: 20px 0;
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  color: var(--fg);
}

/* ── Inline elements ────────────────────────────────────── */

section.lead hr {
  margin-bottom: 5ex;
}
section.lead blockquote {
  position: relative;
  width: 75%;
  max-width: 100%;
  margin: 0;
  padding: 0 0 0 50px;
  background: var(--bg);
  border: 0;
}
section.lead blockquote::before {
  content: '\1F916';
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 28px;
  line-height: 1;
}

section.lead blockquote p {
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word; /* extra safety for very long unbreakable strings */
  color: var(--fg);
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 14px;
  line-height: 1.5;
  margin-left: 10px;
}

section.lead h4 {
  color: var(--fg-70);
  font-size: 18px;
  font-weight: 600;
  margin-top: 1ex;
  margin-bottom: 1ex;
}

strong {
  color: var(--accent);
  font-weight: 700;
}
em {
  color: var(--fg-40);
  font-style: italic;
}

/* ── Table: hairline borders, uppercase mono headers ────── */
table {
  width: 100%;
  border-collapse: collapse;
  font-size: 17px;
  margin-top: 16px;
}
th {
  border-top: 2px solid var(--fg);
  border-bottom: 1px solid var(--border);
  padding: 10px 12px;
  text-align: left;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 500;
  font-family: var(--font-mono);
  color: var(--fg-70);
}
td {
  padding: 9px 12px;
  border-bottom: 1px solid var(--border);
  color: var(--fg);
  font-size: 16px;
}

/* ── Lead (title) slides ────────────────────────────────── */
section.lead {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.lead::before {
  content: '';
  position: absolute;
  top: 64px;
  left: 72px;
  width: 64px;
  height: 2px;
  background: var(--accent);
}
section.lead h1 { font-size: 64px; }
section.lead p {
  font-size: 26px;
  color: var(--fg-70);
  margin-top: 8px;
}
section.lead em {
  display: block;
  margin-top: 20px;
  font-size: 22px;
}

/* ── Metrics: accent top bar on stone surface, no rounding ─ */
.metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  margin-top: 24px;
  background: var(--border);
}
.metric {
  flex: 1;
  min-width: 200px;
  background: var(--surface);
  border-top: 2px solid var(--accent);
  padding: 18px 22px;
}
.metric .num {
  font-family: var(--font-mono);
  font-size: 30px;
  font-weight: 500;
  color: var(--fg);
  display: block;
}
.metric .label {
  font-size: 11px;
  color: var(--fg-50);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--font-mono);
  margin-top: 4px;
  display: block;
}

/* ── Comparison columns ─────────────────────────────────── */
.cols {
  display: flex;
  gap: 1px;
  margin-top: 20px;
}
.col {
  flex: 1;
  padding: 24px;
}
.col-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 16px;
  font-weight: 500;
  font-family: var(--font-mono);
  color: var(--fg-50);
}
.col-title.good {
  color: var(--accent);
  padding-top: 12px;
  border-top: 2px solid var(--accent);
  margin-top: -24px;
  margin-left: -24px;
  margin-right: -24px;
  padding-left: 24px;
  padding-right: 24px;
}
.col-title.bad { color: var(--fg-40); }

/* ── Flow diagram: outlined → filled accent for the action step ─ */
.flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 28px 0 24px;
}
.flow-step {
  font-family: var(--font-mono);
  font-size: 24px;
  font-weight: 500;
  padding: 12px 24px;
  border: 1px solid var(--border-2);
  background: var(--bg);
  color: var(--fg-70);
  -webkit-text-fill-color: var(--fg-70);
}
.flow-step.good {
  border: 1px solid var(--accent);
  background: var(--accent);
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}
.flow-arrow {
  font-family: var(--font-mono);
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 4px;
  color: var(--accent);
  -webkit-text-fill-color: var(--accent);
}

/* ── Headshot: square, thin border ──────────────────────── */
.headshot {
  float: right;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  border: 1px solid var(--border-2);
  margin: 92px 0 16px 28px;
  object-fit: cover;
  background: var(--surface);
}

/* ── Contact block ──────────────────────────────────────── */
.contact {
  margin-top: 24px;
  font-size: 22px;
  line-height: 2;
}
.contact a {
  color: var(--accent);
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
}

/* ── Footnote ───────────────────────────────────────────── */
.footnote a { color: var(--fg-40); }
.footnote {
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 0.7em;
  padding: 10px 20px;
  letter-spacing: 0.3px;
  color: var(--fg-40);
  font-family: var(--font-mono);
}

/* ── Links in body ──────────────────────────────────────── */
a {
  color: var(--accent);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

/* ── Print: strip any remaining screen-only chrome ─────── */
@media print {
  .footnote { display: none; }
  script { display: none; }
}
</style>
