feat(web): refactor markdown component; add privacy policy and terms of service

pull/716/head
Travis Fischer 2025-06-30 04:01:06 -05:00
rodzic 15b26478e7
commit ec751a5b71
8 zmienionych plików z 655 dodań i 139 usunięć

Wyświetl plik

@ -1,12 +1,10 @@
import Link from 'next/link'
import { DotsSection } from '@/components/dots-section'
import { Markdown } from '@/components/markdown'
import { PageContainer } from '@/components/page-container'
import { SupplySideCTA } from '@/components/supply-side-cta'
import { githubUrl, twitterUrl } from '@/lib/config'
import { cn } from '@/lib/utils'
import styles from './styles.module.css'
export default function AboutPage() {
return (
@ -15,57 +13,58 @@ export default function AboutPage() {
About
</h1>
<section className={cn('prose dark:prose-invert', styles.markdown)}>
<h2>Setting the stage</h2>
<section>
<Markdown>
<h2>Setting the stage</h2>
<p>
It's 2025. LLMs are still scaling. AI agents are just starting to take
off. MCP is exploding. The singularity looms. Shoggoth looks back on
us from the near future and gives a sly smile that doesn't quite reach
His inhuman eyes.
</p>
<p>
It's 2025. LLMs are still scaling. AI agents are just starting to
take off. MCP is exploding. The singularity looms. Shoggoth looks
back on us from the near future and gives a sly smile that doesn't
quite reach His inhuman eyes.
</p>
<p>
In this increasingly AI-native world, what's the best way for "normal"
software engineers like us to stay relevant and provide value for both
our families as well as our future AI edgelords?
</p>
<p>
In this increasingly AI-native world, what's the best way for
"normal" software engineers like us to stay relevant and provide
value for both our families as well as our future AI edgelords?
</p>
<p>
Well, I don't know about you, but contributing to foundation models,
AI alignment, and AGI research all seem incredibly sexy but are also a
lil outside my areas of expertise.
</p>
<p>
Well, I don't know about you, but contributing to foundation models,
AI alignment, and AGI research all seem incredibly sexy but are also
a lil outside my areas of expertise.
</p>
<p>
That's why Agentic is focused solely on building value at the LLM tool
calling layer. MCPs are a great example here.
</p>
<p>
That's why Agentic is focused solely on building value at the LLM
tool calling layer. MCPs are a great example here.
</p>
<p>
There's a lot that will change in AI over the next decade, but one
thing I believe strongly is that no matter how much the underlying AI
systems change,{' '}
<span className='font-semibold'>
providing access to high quality tools that are specifically
designed and optimized for agents will become increasingly important
over time
</span>
.
</p>
<p>
There's a lot that will change in AI over the next decade, but one
thing I believe strongly is that no matter how much the underlying
AI systems change,{' '}
<span className='font-semibold'>
providing access to high quality tools that are specifically
designed and optimized for agents will become increasingly
important over time
</span>
.
</p>
<p>
We call this <span className='font-semibold'>Agentic UX</span>, and
it's at the heart of Agentic's mission.
</p>
<p>
We call this <span className='font-semibold'>Agentic UX</span>, and
it's at the heart of Agentic's mission.
</p>
<h2>Mission</h2>
<p className='font-semibold italic'>
Agentic's mission is to provide the world's best library of tools for
AI agents.
</p>
<h2>Mission</h2>
<p className='font-semibold italic'>
Agentic's mission is to provide the world's best library of tools
for AI agents.
</p>
{/* <h2>What is Agentic UX?</h2>
{/* <h2>What is Agentic UX?</h2>
<p>
Agentic User Experience measures how optimized a resource is for
consumption by LLM-based apps and more autonomous AI agents.
@ -83,100 +82,101 @@ export default function AboutPage() {
similar aims. [xkcd standards]
</p> */}
<h2>Team</h2>
<p>
Agentic was founded in 2023 by{' '}
<Link
href={twitterUrl}
target='_blank'
rel='noopener'
className='link'
>
Travis Fischer
</Link>{' '}
(hey hey 👋) . We're backed by{' '}
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
HF0
</Link>
,{' '}
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
Backend Capital
</Link>
, and
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
Transpose Capital
</Link>
.
</p>
<h2>Team</h2>
<p>
Agentic was founded in 2023 by{' '}
<Link
href={twitterUrl}
target='_blank'
rel='noopener'
className='link'
>
Travis Fischer
</Link>{' '}
(hey hey 👋) . We're backed by{' '}
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
HF0
</Link>
,{' '}
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
Backend Capital
</Link>
, and
<Link
href='https://hf0.com'
target='_blank'
rel='noopener'
className='link'
>
Transpose Capital
</Link>
.
</p>
<p>
I'm currently running Agentic as a solo founder while traveling around
the world, but i'm actively looking to hire a few remote engineers and
would consider bringing on a co-founder if they're a really strong
fit.
</p>
<p>
I'm currently running Agentic as a solo founder while traveling
around the world, but i'm actively looking to hire a few remote
engineers and would consider bringing on a co-founder if they're a
really strong fit.
</p>
<p>
If you're an expert TypeScript dev who vibes with our mission and
loves open source and if you have an interest in AI engineering, AI
agents, API gateways, OpenAPI, MCP, AI codegen, etc, feel free to{' '}
<Link
href={twitterUrl}
target='_blank'
rel='noopener'
className='link'
>
DM me on twitter
</Link>
, and please include a few links to your GitHub + related projects.
</p>
<p>
If you're an expert TypeScript dev who vibes with our mission and
loves open source and if you have an interest in AI engineering,
AI agents, API gateways, OpenAPI, MCP, AI codegen, etc, feel free to{' '}
<Link
href={twitterUrl}
target='_blank'
rel='noopener'
className='link'
>
DM me on twitter
</Link>
, and please include a few links to your GitHub + related projects.
</p>
<p className='text-sm italic'>
(this page was written with love and an intentional lack of LLM
assistance on a very long and sleepy international flight 💕)
</p>
<p className='text-sm italic'>
(this page was written with love and an intentional lack of LLM
assistance on a very long and sleepy international flight 💕)
</p>
<h2>Tech stack</h2>
<ul>
<li>TypeScript</li>
<li>Node.js</li>
<li>Postgres</li>
<li>Drizzle ORM</li>
<li>Hono</li>
<li>Stripe</li>
<li>Cloudflare Workers</li>
<li>Vercel</li>
<li>Sentry</li>
<li>Resend</li>
<li>Cursor</li>
</ul>
<h2>Tech stack</h2>
<ul>
<li>TypeScript</li>
<li>Node.js</li>
<li>Postgres</li>
<li>Drizzle ORM</li>
<li>Hono</li>
<li>Stripe</li>
<li>Cloudflare Workers</li>
<li>Vercel</li>
<li>Sentry</li>
<li>Resend</li>
<li>Cursor</li>
</ul>
<p>
<Link
href={githubUrl}
target='_blank'
rel='noopener'
className='link'
>
Check out the source on GitHub for more details
</Link>
.
</p>
<p>
<Link
href={githubUrl}
target='_blank'
rel='noopener'
className='link'
>
Check out the source on GitHub for more details
</Link>
.
</p>
</Markdown>
</section>
{/* CTA section */}

Wyświetl plik

@ -36,7 +36,7 @@ export default function AboutPage() {
{/* CTA section */}
<DotsSection className='max-w-2xl'>
<div className='relative grid grid-cols-2 gap-8'>
<div className='relative grid grid-cols-1 sm:grid-cols-2 gap-8'>
<HeroButton asChild heroVariant='orange' className=''>
<Link href={twitterUrl} target='_blank' rel='noopener'>
DM me on Twitter / X

Wyświetl plik

@ -0,0 +1,258 @@
import Link from 'next/link'
import { Markdown } from '@/components/markdown'
import { PageContainer } from '@/components/page-container'
const lastUpdatedDate = 'June 30, 2025'
export default function AboutPage() {
return (
<PageContainer>
<h1 className='text-center text-balance leading-snug md:leading-none text-4xl font-semibold'>
Privacy Policy
</h1>
<section>
<Markdown>
<p>
<em>Last updated: {lastUpdatedDate}</em>
</p>
<h2>1. Overview</h2>
<p>
Agentic Systems, Inc. (<strong>"Agentic"</strong>,{' '}
<strong>"we"</strong>,<strong>"us"</strong>, or{' '}
<strong>"our"</strong>) provides a modern AI platform comprised of:
</p>
<ul>
<li>
<strong>Marketplace</strong> a curated directory of LLM-powered
tool products that can be called via the Model Context Protocol
("MCP") or standard HTTP&nbsp;APIs.
</li>
<li>
<strong>Gateway</strong> a fully-managed MCP gateway that allows
developers to deploy, monetize, and optionally publish their own
MCP or OpenAPI products.
</li>
<li>
<strong>Open-Source Project</strong> the Agentic
source-available codebase released under the GNU&nbsp;AGPL-3.0
license.
</li>
</ul>
<p>
This Privacy Policy explains how we collect, use, disclose, and
safeguard information in connection with the Agentic website,
console, Marketplace, Gateway, and any related services
(collectively, the <strong>"Service"</strong>).
</p>
<h2>2. Information We Collect</h2>
<p>
We collect the following categories of information when you use the
Service:
</p>
<ul>
<li>
<strong>Account Information</strong>: name, email, billing
address, and authentication credentials that you provide when you
create an Agentic account.
</li>
<li>
<strong>Payment Information</strong>: payment method details
(e.g.&nbsp;card type and last four digits) processed by Stripe on
our behalf. Stripe's privacy practices are described in its own
policy.
</li>
<li>
<strong>Usage Data</strong>: log files, API request metadata, IP
address, browser type, referring pages, and other diagnostic
information automatically collected when you interact with the
Service.
</li>
<li>
<strong>Developer Content</strong>: API specifications,
configuration, and other content that you upload to the Gateway or
Marketplace.
</li>
<li>
<strong>Cookies &amp; Similar Technologies</strong>: small data
files placed on your device to enable site functionality,
analytics, and preference storage. You can disable cookies in your
browser settings, but parts of the Service may not function
properly.
</li>
</ul>
<h2>3. How We Use Information</h2>
<p>We use the information we collect to:</p>
<ul>
<li>Provide, maintain, and improve the Service;</li>
<li>
Facilitate Marketplace and Gateway transactions, including billing
through Stripe;
</li>
<li>Authenticate users and secure the Service;</li>
<li>
Monitor usage and detect, prevent, or address technical issues or
fraudulent activity;
</li>
<li>
Respond to inquiries, provide customer support, and send
administrative messages;
</li>
<li>
Send product updates, promotional communications, or other
information that may be of interest to you (you may opt out at any
time);
</li>
<li>Carry out research, analytics, and product development;</li>
<li>
Comply with legal obligations and enforce our Terms of Service.
</li>
</ul>
<h2>4. Sharing &amp; Disclosure</h2>
<p>We may share information as follows:</p>
<ul>
<li>
<strong>Service Providers</strong>: with vendors who perform
services on our behalf, such as hosting, analytics, and payment
processing.
</li>
<li>
<strong>API Providers &amp; Consumers</strong>: Marketplace
product owners may receive usage metrics related to their own
products; conversely, when you list a product we may display your
developer profile to potential consumers.
</li>
<li>
<strong>Business Transfers</strong>: as part of a merger,
acquisition, financing, or sale of assets.
</li>
<li>
<strong>Affiliates</strong>: with our corporate affiliates who are
bound to honor this policy.
</li>
<li>
<strong>Legal Requirements</strong>: when required to comply with
law or protect the rights, property, or safety of Agentic, our
users, or the public.
</li>
<li>
<strong>With Your Consent</strong>: in any other situation where
you direct us to share the information.
</li>
</ul>
<h2>5. Payments via Stripe</h2>
<p>
All Marketplace purchases and Gateway subscription fees are
processed by Stripe. Agentic does not store full payment-card
numbers or CVC codes. Stripe acts as a separate controller of your
payment information please review the{' '}
<a
href='https://stripe.com/privacy'
target='_blank'
rel='noopener noreferrer'
>
Stripe&nbsp;Privacy&nbsp;Policy
</a>{' '}
for details.
</p>
<h2>6. Data Retention</h2>
<p>
We retain information for as long as necessary to fulfill the
purposes described in this Policy, comply with our legal
obligations, resolve disputes, and enforce our agreements. Log data
is typically retained for no more than 18&nbsp;months unless we are
legally required to keep it longer.
</p>
<h2>7. International Transfers</h2>
<p>
We are a U.S.-based company and may process information in the
United States and other countries where we or our service providers
operate. We rely on appropriate safeguards, such as Standard
Contractual Clauses, for the transfer of personal data from the
EU/EEA, UK, and Switzerland.
</p>
<h2>8. Security</h2>
<p>
We employ technical and organizational measures designed to protect
information against loss, misuse, and unauthorized access or
disclosure. However, no system can be guaranteed to be 100% secure.
</p>
<h2>9. Your Rights</h2>
<p>
Depending on your jurisdiction, you may have rights to access,
rectify, delete, restrict, or object to our processing of your
personal information, as well as the right to data portability and
to withdraw consent. To exercise these rights, please contact us as
set forth below. We respond to all requests consistent with
applicable law.
</p>
<h2>10. Children's Privacy</h2>
<p>
The Service is not directed to children under 13, and we do not
knowingly collect personal information from children. If you believe
a child has provided us with personal information, please contact us
and we will take steps to delete such information.
</p>
<h2>11. Third-Party Links</h2>
<p>
The Service may contain links to third-party websites. We are not
responsible for the privacy practices of those sites. We encourage
you to review the privacy policies of every site you visit.
</p>
<h2>12. Changes to This Policy</h2>
<p>
We may update this Privacy Policy from time to time. We will post
the revised version on this page and indicate the date of the latest
revision at the top. If changes are material, we will provide
additional notice (e.g., email or in-app alert) at least 7&nbsp;days
before they take effect.
</p>
<h2>13. Contact Us</h2>
<p>
If you have any questions or concerns about this Privacy Policy or
our privacy practices, please{' '}
<Link href='/contact'>contact us</Link> or email us at{' '}
<a href='mailto:support@agentic.so'>support@agentic.so</a>.
</p>
</Markdown>
</section>
</PageContainer>
)
}

Wyświetl plik

@ -0,0 +1,243 @@
import Link from 'next/link'
import { Markdown } from '@/components/markdown'
import { PageContainer } from '@/components/page-container'
const lastUpdatedDate = 'June 30, 2025'
export default function AboutPage() {
return (
<PageContainer>
<h1 className='text-center text-balance leading-snug md:leading-none text-4xl font-semibold'>
Terms of Service
</h1>
<section>
<Markdown>
<p>
<em>Last updated: {lastUpdatedDate}</em>
</p>
<h2>1. Introduction</h2>
<p>
These Terms of Service (<strong>"Terms"</strong>) govern your access
to and use of Agentic Systems, Inc.'s websites, software, and
related services (collectively, the <strong>"Service"</strong>).
Agentic (<strong>"Agentic," "we," "us,"</strong> or{' '}
<strong>"our"</strong>) provides three distinct but connected
offerings:
</p>
<p>
<strong>(a) Agentic Marketplace</strong> A curated app store of
LLM tool products exposed via both Model Context Protocol (MCP) and
standard HTTP&nbsp;APIs.
</p>
<p>
<strong>(b) Agentic Gateway</strong> A fully managed MCP gateway
that enables developers to deploy and monetize their own MCP or
OpenAPI products, whether privately or publicly.
</p>
<p>
<strong>(c) Agentic Open-Source Project</strong> The
source-available software released under the GNU&nbsp;AGPL-3.0
license.
</p>
<p>
By creating an account, clicking "I&nbsp;agree," or otherwise using
any part of the Service, you acknowledge that you have read,
understood, and agree to be legally bound by these Terms. If you do
not agree, you must not access or use the Service.
</p>
<h2>2. Eligibility &amp; Account Registration</h2>
<p>
You must be at least 18&nbsp;years old and legally capable of
entering into contracts to use the Service. When you register an
Agentic account you agree to (i) provide accurate, current, and
complete information; (ii) maintain the security of your
credentials; and (iii) promptly update your information as
necessary. You are responsible for all activity occurring under your
account.
</p>
<h2>3. Plans, Subscriptions &amp; Fees</h2>
<p>
Pricing for Marketplace purchases and Gateway subscriptions is
described on the applicable order page or pricing dashboard. All
charges are processed by Stripe and are due within the payment
period stated at checkout. Except as required by law, payments are
non-refundable. We may modify our pricing with at least&nbsp;30
days' notice, which will take effect in your next billing cycle.
Developers publishing products to the Agentic Marketplace must also
agree to the{' '}
<a
href='https://stripe.com/legal/connect-account'
target='_blank'
rel='noopener noreferrer'
>
Stripe Connect Account Agreement
</a>
.
</p>
<h2>4. Marketplace-Specific Terms</h2>
<p>
(a) <strong>API Consumers.</strong> When you purchase access to a
product in the Marketplace you receive a non-exclusive,
non-transferable, revocable license to call that API subject to any
usage limits and other terms displayed on the product page.
</p>
<p>
(b) <strong>API Providers.</strong> If you list a product in the
Marketplace you (i) represent that you have all rights necessary to
offer the product; (ii) grant each purchaser the license described
above; and (iii) authorize Agentic to collect payments on your
behalf and remit amounts owed to you, less any platform fees.
</p>
<h2>5. Gateway-Specific Terms</h2>
<p>
You may deploy private or public APIs through the Gateway. You are
solely responsible for the security, legality, and performance of
the APIs you deploy. If you enable billing, you appoint Agentic as
your limited payments collection agent for the purpose of accepting
payments from end users via Stripe.
</p>
<h2>6. Open-Source Project</h2>
<p>
The Agentic open-source codebase is licensed under the{' '}
<Link
href='https://github.com/transitive-bullshit/agentic/blob/main/license'
className='link'
target='_blank'
rel='noopener noreferrer'
>
GNU&nbsp;AGPL-3.0 license
</Link>
. Your use of the open-source project is governed solely by that
license. Nothing in these Terms will be interpreted to limit your
rights granted under the AGPL-3.0, nor to grant additional rights
beyond it.
</p>
<h2>7. User Content</h2>
<p>
"<strong>User Content</strong>" means any code, text, data, or other
materials you upload to the Service, including APIs, metadata, and
documentation. You retain all ownership rights in your User Content.
You hereby grant Agentic a worldwide, non-exclusive, royalty-free
license to host, cache, reproduce, display, perform, modify (solely
for technical purposes, e.g.&nbsp;formatting), and distribute your
User Content as necessary to operate and improve the Service. You
are solely responsible for your User Content and represent that you
have all rights necessary to grant this license and that your User
Content does not violate any law or third-party rights.
</p>
<h2>8. Acceptable Use Policy</h2>
<p>
You agree not to (i) violate applicable laws; (ii) infringe the
intellectual-property or privacy rights of others; (iii) transmit
malicious code; (iv) attempt to gain unauthorized access to the
Service; (v) interfere with the integrity or performance of the
Service; or (vi) send spam or engage in fraudulent or deceptive
practices. We may suspend or terminate accounts that violate this
policy.
</p>
<h2>9. Privacy &amp; Security</h2>
<p>
Our collection and use of personal information is described in our
<Link href='/privacy'>Privacy&nbsp;Policy</Link>. We implement
appropriate technical and organizational measures to safeguard your
data; however, no security measure is perfect and we cannot
guarantee absolute security.
</p>
<h2>10. Intellectual Property</h2>
<p>
The Service, including all associated software, content, and
trademarks, is owned by Agentic or its licensors and is protected by
intellectual-property laws. Except for the rights expressly granted
to you in these Terms, we reserve all rights, title, and interest in
the Service.
</p>
<h2>11. Suspension &amp; Termination</h2>
<p>
We may suspend or terminate your access to the Service at any time
if we believe you have violated these Terms or if necessary to
protect the Service or its users. Upon termination, your right to
use the Service will cease immediately, but Sections&nbsp;616 will
survive.
</p>
<h2>12. Disclaimers</h2>
<p>
THE SERVICE IS PROVIDED <strong>"AS&nbsp;IS"</strong> AND
<strong>"AS&nbsp;AVAILABLE"</strong> WITHOUT WARRANTY OF ANY KIND.
TO THE MAXIMUM EXTENT PERMITTED BY LAW, AGENTIC DISCLAIMS ALL
WARRANTIES, WHETHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE,
INCLUDING MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
NON-INFRINGEMENT. WE DO NOT WARRANT THAT THE SERVICE WILL BE
UNINTERRUPTED, ERROR-FREE, OR SECURE.
</p>
<h2>13. Limitation of Liability</h2>
<p>
TO THE FULLEST EXTENT PERMITTED BY LAW, IN NO EVENT WILL AGENTIC BE
LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR
EXEMPLARY DAMAGES (INCLUDING LOSS OF PROFITS, GOODWILL, OR DATA)
ARISING OUT OF OR IN CONNECTION WITH THE SERVICE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGES. AGENTIC'S TOTAL LIABILITY UNDER
THESE TERMS WILL NOT EXCEED THE GREATER OF (A)&nbsp;FEES YOU PAID TO
AGENTIC IN THE&nbsp;12 MONTHS PRECEDING THE EVENT GIVING RISE TO THE
CLAIM OR (B)&nbsp;USD&nbsp;100.
</p>
<h2>14. Indemnification</h2>
<p>
You will indemnify and hold harmless Agentic and its officers,
directors, employees, and agents from and against any third-party
claims, damages, and expenses (including reasonable attorneys' fees)
arising out of or related to your (i) breach of these Terms, (ii)
User Content, or (iii) violation of any law or third-party rights.
</p>
<h2>15. Governing Law &amp; Venue</h2>
<p>
These Terms are governed by the laws of the State of Delaware,
excluding its conflict-of-laws rules. The state and federal courts
located in Wilmington, Delaware will have exclusive jurisdiction to
adjudicate any dispute arising out of or relating to these Terms or
the Service, and you consent to personal jurisdiction and venue in
those courts.
</p>
<h2>16. Changes to These Terms</h2>
<p>
We may update these Terms by posting a revised version on our
website and providing notice via email or in-app notification at
least&nbsp;7 days before the effective date. Continued use of the
Service after the effective date constitutes acceptance of the
revised Terms.
</p>
<h2>17. Contact</h2>
<p>
Questions or notices required under these Terms should be sent to
<a href='mailto:support@agentic.so'>support@agentic.so</a>. You may
also
<Link href='/contact'>contact&nbsp;us</Link> through our website.
</p>
</Markdown>
</section>
</PageContainer>
)
}

Wyświetl plik

@ -153,7 +153,7 @@ export function Footer() {
</div>
<div>
<ActiveLink href='/privacy-policy' className='link'>
<ActiveLink href='/privacy' className='link'>
Privacy Policy
</ActiveLink>
</div>

Wyświetl plik

@ -0,0 +1,17 @@
import { cn } from '@/lib/utils'
import styles from './styles.module.css'
export function Markdown({
children,
className
}: {
className?: string
children: React.ReactNode
}) {
return (
<div className={cn('prose dark:prose-invert', styles.markdown, className)}>
{children}
</div>
)
}

Wyświetl plik

@ -20,10 +20,8 @@
- social images
- double-check free-tier rate-limits for `@agentic/search`
- replace json project and components with actual designs
- implement footer
- finesse header (mobile)
- create agentic products for legacy tools
- add basic legal terms and privacy policy (and update links in stripe)
- add support for [`@google/genai`](https://github.com/googleapis/js-genai) tools adapter
- add feature about optimized context to marketing site
- ensure all agentic tool inputSchemas support openai strict mode by default