已验证的 AgentReady.md 证书
签发于 sig: cedb95c8d8d97966 验证 →

已分析URL

https://zentract.io

分析另一个URL

AI-Ready评分

89 / B

良好

/ 100

Token节省量

HTML Token 30.615
Markdown Token 1083
节省 96%

评分详情

语义化HTML 83/100
内容效率 93/100
AI可发现性 77/100
结构化数据 100/100
可访问性 100/100

新兴协议

已检测到 1/3

AI代理查找的well-known端点。检测到意味着代理可以自动发现并连接到您的服务。

  • OAuth Discovery RFC 8414
    /.well-known/oauth-authorization-server
    • issuer: https://zentract.io
    • token_endpoint: https://zentract.io/api/oauth2/token
    • 2 grant type(s)
  • MCP Server Card Anthropic
    /.well-known/mcp.json
  • A2A Agent Card Google
    /.well-known/agent.json

您的网站不支持Markdown for Agents。此Cloudflare标准允许AI代理以markdown格式请求内容,减少约80%的令牌使用。

如何实施

实现以下一项或多项:(1) 使用markdown内容响应Accept: text/markdown。(2) 提供.md URL(例如/page.md)。(3) 添加<link rel="alternate" type="text/markdown">标签。(4) 添加Link HTTP标头用于markdown发现。

{\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"},{"id":"fastify","label":"Fastify","language":"javascript","filename":"server.js","code":"// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"},{"id":"nextjs","label":"Next.js","language":"typescript","filename":"app/page/route.ts","code":"// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"},{"id":"wordpress","label":"WordPress","language":"php","filename":"functions.php","code":"post_content));\n exit;\n});"},{"id":"static","label":"Hugo / Jekyll / Astro","language":"txt","filename":"static/page.md","code":"# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in :\n# "}] }'>

您的页面大量依赖<div>元素。<section>、<nav>、<header>、<footer>和<aside>等语义元素为AI代理提供有意义的结构。

如何实施

将通用<div>容器替换为适当的语义元素。对主题分组使用<section>,导航使用<nav>,页面/区块的头部和底部使用<header>/<footer>。

许多元素具有内联样式属性。这些会为提取内容的AI代理增加噪声。

如何实施

将所有内联样式移至样式表中的CSS类。如需大量独特样式,使用Tailwind等实用CSS框架。

Markdown Token: 1083
For agencies that bill time

# Stop losing revenue
to time you already
worked.

Zentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.

Join the waitlist

[Sign in →](https://zentract.io/sign-in)

No credit card required.

zentract — Acme Corp / Website Redesign

Write homepage copy

Acme Corp · Copywriting

1:45

Design system audit

Acme Corp · Design · Billable

02:34:18

Handoff to dev

Acme Corp · PM

—

Live timerRecording

02:34:18

Design system audit · Acme Corp

Used byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios

The real cost of disconnected tools

01

### Time logged late is time not invoiced.

Details fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.

02

### Scope creeps before you can react.

You hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.

03

### Billing is a monthly reconstruction.

You spend hours piecing together what happened. Then write off the hours that don't have receipts.

Time Tracking

## Every task
is a timer.

One click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.

-   ✓One-click timers on any task
-   ✓Billable vs non-billable on every entry
-   ✓Log from web or iOS & Android
-   ✓Only one timer runs at a time

Active tasks1 running

Design system audit

Acme Corp · Billable

02:34:18

Write homepage copy

Acme Corp · Billable

1:45:00

Stakeholder review call

Acme Corp · Non-billable

—

02:34:18

today · Acme Corp

Budget overviewLive

Website Redesign · Acme Corp82%

Q2 Content Strategy · Bloom44%

Platform Audit · NovaTech107%

Budgeted

240h

Logged

198h

Remaining

42h

Budget Control

## See the overage
before it happens.

Budget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.

-   ✓Real-time budget vs actual
-   ✓Overage alerts at your threshold
-   ✓Per-project and per-client views
-   ✓Hours or dollar-based budgets

Invoicing

## Invoice from
source, not memory.

Select a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.

-   ✓Generate from tracked time entries
-   ✓Grouped by task or category
-   ✓Billable-only filter built in
-   ✓Export-ready output

Invoice previewReady to export

Acme Corp

March 1–31, 2026

INV-0024

Due Apr 14, 2026

Design system audit

14.5 hrs · $150/hr

$2,175

Homepage copy

6.25 hrs · $120/hr

$750

Project management

3.0 hrs · $120/hr

$360

Total due$3,285

Export invoice →

## How it works.

Three steps. No setup ceremony. No onboarding calls required.

STEP 01

### Set up a project.

Create a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.

STEP 02

### Track time as you work.

Open a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.

STEP 03

### Invoice with one click.

Select a billing period. Review grouped line items from real entries. Export. Done.

## Free to start.
Scales when you do.

Everything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.

Free tier

$0/ month

-   ✓3 team members
-   ✓5 clients
-   ✓10 projects
-   ✓Unlimited time tracking
-   ✓Invoice generation
-   ✓iOS & Android apps

Join the waitlist

FAQ

## Common questions

Everything you need to know before getting started with Zentract.

How does Zentract help agencies track billable hours?

How is Zentract different from Harvest or Toggl?

Can Zentract generate invoices from time tracking?

Is Zentract free to use?

What types of agencies and teams use Zentract?

Does Zentract prevent scope creep on client projects?

Does Zentract have mobile apps?

## Every hour you worked
deserves to be invoiced.

Join early access. We'll reach out when your workspace is ready. No credit card required.

Join the waitlist

No credit card · No spam · Cancel anytime

Already using Zentract? [Sign in →](https://zentract.io/sign-in)
Zentract — Agency Time Tracking & Client Billing Software

For agencies that bill time

# Stop losing revenue
to time you already
worked.

Zentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.

Join the waitlist

[Sign in →](https://zentract.io/sign-in)

No credit card required.

zentract — Acme Corp / Website Redesign

Write homepage copy

Acme Corp · Copywriting

1:45

Design system audit

Acme Corp · Design · Billable

02:34:18

Handoff to dev

Acme Corp · PM

—

Live timerRecording

02:34:18

Design system audit · Acme Corp

Used byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios

The real cost of disconnected tools

01

### Time logged late is time not invoiced.

Details fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.

02

### Scope creeps before you can react.

You hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.

03

### Billing is a monthly reconstruction.

You spend hours piecing together what happened. Then write off the hours that don't have receipts.

Time Tracking

## Every task
is a timer.

One click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.

-   ✓One-click timers on any task
-   ✓Billable vs non-billable on every entry
-   ✓Log from web or iOS & Android
-   ✓Only one timer runs at a time

Active tasks1 running

Design system audit

Acme Corp · Billable

02:34:18

Write homepage copy

Acme Corp · Billable

1:45:00

Stakeholder review call

Acme Corp · Non-billable

—

02:34:18

today · Acme Corp

Budget overviewLive

Website Redesign · Acme Corp82%

Q2 Content Strategy · Bloom44%

Platform Audit · NovaTech107%

Budgeted

240h

Logged

198h

Remaining

42h

Budget Control

## See the overage
before it happens.

Budget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.

-   ✓Real-time budget vs actual
-   ✓Overage alerts at your threshold
-   ✓Per-project and per-client views
-   ✓Hours or dollar-based budgets

Invoicing

## Invoice from
source, not memory.

Select a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.

-   ✓Generate from tracked time entries
-   ✓Grouped by task or category
-   ✓Billable-only filter built in
-   ✓Export-ready output

Invoice previewReady to export

Acme Corp

March 1–31, 2026

INV-0024

Due Apr 14, 2026

Design system audit

14.5 hrs · $150/hr

$2,175

Homepage copy

6.25 hrs · $120/hr

$750

Project management

3.0 hrs · $120/hr

$360

Total due$3,285

Export invoice →

## How it works.

Three steps. No setup ceremony. No onboarding calls required.

STEP 01

### Set up a project.

Create a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.

STEP 02

### Track time as you work.

Open a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.

STEP 03

### Invoice with one click.

Select a billing period. Review grouped line items from real entries. Export. Done.

## Free to start.
Scales when you do.

Everything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.

Free tier

$0/ month

-   ✓3 team members
-   ✓5 clients
-   ✓10 projects
-   ✓Unlimited time tracking
-   ✓Invoice generation
-   ✓iOS & Android apps

Join the waitlist

FAQ

## Common questions

Everything you need to know before getting started with Zentract.

How does Zentract help agencies track billable hours?

How is Zentract different from Harvest or Toggl?

Can Zentract generate invoices from time tracking?

Is Zentract free to use?

What types of agencies and teams use Zentract?

Does Zentract prevent scope creep on client projects?

Does Zentract have mobile apps?

## Every hour you worked
deserves to be invoiced.

Join early access. We'll reach out when your workspace is ready. No credit card required.

Join the waitlist

No credit card · No spam · Cancel anytime

Already using Zentract? [Sign in →](https://zentract.io/sign-in)

将此文件上传到服务器的/index.md,以便AI代理可以访问页面的干净版本。您也可以配置Accept: text/markdown内容协商以自动提供。

我们的建议

下载llms.txt
# zentract.io

> One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.

## Main
- [Zentract — Agency Time Tracking & Client Billing Software](https://zentract.io): One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consulta…
- [ZentractZENTRACT](https://zentract.io/)
- [Sign in](https://zentract.io/sign-in)

## Legal
- [Privacy](https://zentract.io/privacy)
- [Terms](https://zentract.io/terms)

## Support
- [Contact](https://zentract.io/contact)

完整llms.txt需要全域分析(即将推出)

将此文件上传到域名根目录的https://zentract.io/llms.txt。ChatGPT、Claude和Perplexity等AI代理会检查此文件以了解您的网站结构。

该网站已有llms.txt文件。

格式有效
# Zentract

> Zentract is a project management and time tracking platform for professional services firms. 
It helps teams manage clients, projects, tasks, time entries, billing, and reporting.

Important notes:
- Public crawling rules are defined in robots.txt; see links below.


## About Site

- [Homepage](https://zentract.io)
- [Privacy](https://zentract.io/privacy): Privacy policy
- [Terms](https://zentract.io/terms): Terms of service
- [Contact](https://zentract.io/contact): Contact us page
- [robots.txt](https://zentract.io/robots.txt): Crawler access rules and disallowed paths
- [Sitemap](https://zentract.io/sitemap.xml): Discoverable public pages

语义化HTML

使用article或main元素 (100/100)

Has <main>

正确的标题层级 (85/100)

1 heading level skip(s)

使用语义化HTML元素 (32/100)

14 semantic elements, 134 divs (ratio: 9%)

有意义的图片alt属性 (100/100)

No images found

较低的div嵌套深度 (100/100)

Avg div depth: 4.6, max: 8

内容效率

良好的Token减少比率 (100/100)

96% token reduction (HTML→Markdown)

良好的内容与噪声比 (100/100)

Content ratio: 59.2% (60153 content chars / 101540 HTML bytes)

最少的内联样式 (50/100)

21/466 elements with inline styles (4.5%)

合理的页面重量 (100/100)

HTML size: 99KB

AI可发现性

有llms.txt文件 (100/100)

llms.txt exists and is valid

有robots.txt文件 (100/100)

robots.txt exists

robots.txt允许AI机器人 (100/100)

All major AI bots allowed

有sitemap.xml (100/100)

Sitemap found

Markdown for Agents支持 (40/100) Cloudflare CDN
&#10003; Accept: text/markdown &#10007; .md URL &#10007; <link> tag &#10007; Link header YAML frontmatter (basic)
有Content-Signal(robots.txt或HTTP标头) (60/100)
&#10003; robots.txt &#10007; HTTP header &#10007; Policy

结构化数据

有Schema.org / JSON-LD (100/100)

JSON-LD found: Organization, WebApplication, FAQPage

有Open Graph标签 (100/100)

All OG tags present

有meta描述 (100/100)

Meta description: 154 chars

有规范URL (100/100)

Canonical URL present

有lang属性 (100/100)

lang="en"

可访问性

无需JavaScript即可获取内容 (100/100)

Content available without JavaScript

合理的页面大小 (100/100)

Page size: 99KB

内容在HTML中位置靠前 (100/100)

Main content starts at 13% of HTML

{
  "url": "https://zentract.io",
  "timestamp": 1777728201324,
  "fetch": {
    "mode": "simple",
    "timeMs": 435,
    "htmlSizeBytes": 101540,
    "supportsMarkdown": true,
    "markdownAgents": {
      "contentNegotiation": true,
      "mdUrl": {
        "found": false,
        "url": null
      },
      "linkTag": {
        "found": false,
        "url": null
      },
      "linkHeader": {
        "found": false,
        "url": null
      },
      "responseHeaders": {
        "contentSignal": null,
        "xMarkdownTokens": "820",
        "vary": "Accept"
      },
      "frontmatter": {
        "present": true,
        "fields": [
          "title",
          "path"
        ],
        "level": "basic"
      },
      "level": "cloudflare"
    },
    "statusCode": 200
  },
  "extraction": {
    "title": "Zentract — Agency Time Tracking & Client Billing Software",
    "excerpt": "((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=[\"light\",\"dark\"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c=\"class\"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d)",
    "byline": null,
    "siteName": null,
    "lang": "en",
    "contentLength": 60153,
    "metadata": {
      "description": "One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.",
      "ogTitle": "Zentract — Agency Time Tracking & Client Billing Software",
      "ogDescription": "One-click time tracking, real-time budget alerts, and client invoicing in one platform. Stop losing revenue to hours you already worked.",
      "ogImage": "https://zentract.io/og-image.png",
      "ogType": "website",
      "canonical": "https://zentract.io",
      "lang": "en",
      "schemas": [
        {
          "@context": "https://schema.org",
          "@type": "Organization",
          "name": "Zentract",
          "url": "https://zentract.io",
          "logo": "https://zentract.io/logo.png",
          "description": "Agency management platform for time tracking, project billing, and client invoicing. Built for agencies, consultancies, and professional services teams.",
          "sameAs": [
            "https://twitter.com/zentractapp",
            "https://www.linkedin.com/company/vokality",
            "https://www.producthunt.com/products/zentract"
          ],
          "contactPoint": {
            "@type": "ContactPoint",
            "contactType": "customer support",
            "url": "https://zentract.io/contact"
          }
        },
        {
          "@context": "https://schema.org",
          "@type": "WebApplication",
          "name": "Zentract",
          "applicationCategory": "BusinessApplication",
          "operatingSystem": "Web, iOS, Android",
          "description": "One-click time tracking with real-time budget monitoring and client invoicing for agencies and professional services teams.",
          "url": "https://zentract.io",
          "offers": {
            "@type": "Offer",
            "price": "0",
            "priceCurrency": "USD",
            "description": "Free plan available — up to 3 team members, 5 clients, 10 projects"
          },
          "featureList": [
            "One-click billable time tracking",
            "Real-time project budget monitoring",
            "Client invoice generation from time entries",
            "Scope creep alerts",
            "iOS and Android mobile apps",
            "Team collaboration"
          ],
          "screenshot": "https://zentract.io/og-image.png"
        },
        {
          "@context": "https://schema.org",
          "@type": "FAQPage",
          "mainEntity": [
            {
              "@type": "Question",
              "name": "How does Zentract help agencies track billable hours?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract lets you start a timer with one click directly from any task. Each time entry is automatically linked to the task, project, and client, so there is no retroactive guessing. You can mark hours as billable or non-billable, and your team's time is always visible in real time."
              }
            },
            {
              "@type": "Question",
              "name": "How is Zentract different from Harvest or Toggl?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Harvest and Toggl are strong standalone time trackers, but they require manual work to connect time to projects, budgets, and invoices. Zentract integrates time tracking, project budget monitoring, and client billing in one place so teams can see budget risk early and invoice directly from tracked time."
              }
            },
            {
              "@type": "Question",
              "name": "Can Zentract generate invoices from time tracking?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Once your team logs time against a client project, you can generate a client invoice directly from those entries. Zentract pulls billable hours automatically, so billing becomes a one-click process instead of a manual reconstruction at month end."
              }
            },
            {
              "@type": "Question",
              "name": "Is Zentract free to use?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Zentract has a free tier that supports up to 3 team members, 5 clients, and 10 projects, with unlimited time tracking and invoice generation included. No credit card is required."
              }
            },
            {
              "@type": "Question",
              "name": "What types of agencies and teams use Zentract?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract is built for teams that bill by the hour, including design agencies, development shops, marketing studios, consulting firms, and fractional service teams."
              }
            },
            {
              "@type": "Question",
              "name": "Does Zentract prevent scope creep on client projects?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract shows real-time budget consumption per project. As teams log hours, it becomes clear what percentage of the budget has been used so project leads can have a scope conversation before the project is already over budget."
              }
            },
            {
              "@type": "Question",
              "name": "Does Zentract have mobile apps?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Zentract has iOS and Android apps so teams can log time from anywhere, whether they are in a client meeting, on-site, or working remotely."
              }
            }
          ]
        }
      ],
      "robotsMeta": "index, follow",
      "author": null,
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "For agencies that bill time\n\n# Stop losing revenue\nto time you already\nworked.\n\nZentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.\n\nJoin the waitlist\n\n[Sign in →](https://zentract.io/sign-in)\n\nNo credit card required.\n\nzentract — Acme Corp / Website Redesign\n\nWrite homepage copy\n\nAcme Corp · Copywriting\n\n1:45\n\nDesign system audit\n\nAcme Corp · Design · Billable\n\n02:34:18\n\nHandoff to dev\n\nAcme Corp · PM\n\n—\n\nLive timerRecording\n\n02:34:18\n\nDesign system audit · Acme Corp\n\nUsed byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios\n\nThe real cost of disconnected tools\n\n01\n\n### Time logged late is time not invoiced.\n\nDetails fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.\n\n02\n\n### Scope creeps before you can react.\n\nYou hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.\n\n03\n\n### Billing is a monthly reconstruction.\n\nYou spend hours piecing together what happened. Then write off the hours that don't have receipts.\n\nTime Tracking\n\n## Every task\nis a timer.\n\nOne click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.\n\n-   ✓One-click timers on any task\n-   ✓Billable vs non-billable on every entry\n-   ✓Log from web or iOS & Android\n-   ✓Only one timer runs at a time\n\nActive tasks1 running\n\nDesign system audit\n\nAcme Corp · Billable\n\n02:34:18\n\nWrite homepage copy\n\nAcme Corp · Billable\n\n1:45:00\n\nStakeholder review call\n\nAcme Corp · Non-billable\n\n—\n\n02:34:18\n\ntoday · Acme Corp\n\nBudget overviewLive\n\nWebsite Redesign · Acme Corp82%\n\nQ2 Content Strategy · Bloom44%\n\nPlatform Audit · NovaTech107%\n\nBudgeted\n\n240h\n\nLogged\n\n198h\n\nRemaining\n\n42h\n\nBudget Control\n\n## See the overage\nbefore it happens.\n\nBudget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.\n\n-   ✓Real-time budget vs actual\n-   ✓Overage alerts at your threshold\n-   ✓Per-project and per-client views\n-   ✓Hours or dollar-based budgets\n\nInvoicing\n\n## Invoice from\nsource, not memory.\n\nSelect a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.\n\n-   ✓Generate from tracked time entries\n-   ✓Grouped by task or category\n-   ✓Billable-only filter built in\n-   ✓Export-ready output\n\nInvoice previewReady to export\n\nAcme Corp\n\nMarch 1–31, 2026\n\nINV-0024\n\nDue Apr 14, 2026\n\nDesign system audit\n\n14.5 hrs · $150/hr\n\n$2,175\n\nHomepage copy\n\n6.25 hrs · $120/hr\n\n$750\n\nProject management\n\n3.0 hrs · $120/hr\n\n$360\n\nTotal due$3,285\n\nExport invoice →\n\n## How it works.\n\nThree steps. No setup ceremony. No onboarding calls required.\n\nSTEP 01\n\n### Set up a project.\n\nCreate a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.\n\nSTEP 02\n\n### Track time as you work.\n\nOpen a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.\n\nSTEP 03\n\n### Invoice with one click.\n\nSelect a billing period. Review grouped line items from real entries. Export. Done.\n\n## Free to start.\nScales when you do.\n\nEverything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.\n\nFree tier\n\n$0/ month\n\n-   ✓3 team members\n-   ✓5 clients\n-   ✓10 projects\n-   ✓Unlimited time tracking\n-   ✓Invoice generation\n-   ✓iOS & Android apps\n\nJoin the waitlist\n\nFAQ\n\n## Common questions\n\nEverything you need to know before getting started with Zentract.\n\nHow does Zentract help agencies track billable hours?\n\nHow is Zentract different from Harvest or Toggl?\n\nCan Zentract generate invoices from time tracking?\n\nIs Zentract free to use?\n\nWhat types of agencies and teams use Zentract?\n\nDoes Zentract prevent scope creep on client projects?\n\nDoes Zentract have mobile apps?\n\n## Every hour you worked\ndeserves to be invoiced.\n\nJoin early access. We'll reach out when your workspace is ready. No credit card required.\n\nJoin the waitlist\n\nNo credit card · No spam · Cancel anytime\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
  "fullPageMarkdown": "Zentract — Agency Time Tracking & Client Billing Software\n\nFor agencies that bill time\n\n# Stop losing revenue\nto time you already\nworked.\n\nZentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.\n\nJoin the waitlist\n\n[Sign in →](https://zentract.io/sign-in)\n\nNo credit card required.\n\nzentract — Acme Corp / Website Redesign\n\nWrite homepage copy\n\nAcme Corp · Copywriting\n\n1:45\n\nDesign system audit\n\nAcme Corp · Design · Billable\n\n02:34:18\n\nHandoff to dev\n\nAcme Corp · PM\n\n—\n\nLive timerRecording\n\n02:34:18\n\nDesign system audit · Acme Corp\n\nUsed byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios\n\nThe real cost of disconnected tools\n\n01\n\n### Time logged late is time not invoiced.\n\nDetails fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.\n\n02\n\n### Scope creeps before you can react.\n\nYou hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.\n\n03\n\n### Billing is a monthly reconstruction.\n\nYou spend hours piecing together what happened. Then write off the hours that don't have receipts.\n\nTime Tracking\n\n## Every task\nis a timer.\n\nOne click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.\n\n-   ✓One-click timers on any task\n-   ✓Billable vs non-billable on every entry\n-   ✓Log from web or iOS & Android\n-   ✓Only one timer runs at a time\n\nActive tasks1 running\n\nDesign system audit\n\nAcme Corp · Billable\n\n02:34:18\n\nWrite homepage copy\n\nAcme Corp · Billable\n\n1:45:00\n\nStakeholder review call\n\nAcme Corp · Non-billable\n\n—\n\n02:34:18\n\ntoday · Acme Corp\n\nBudget overviewLive\n\nWebsite Redesign · Acme Corp82%\n\nQ2 Content Strategy · Bloom44%\n\nPlatform Audit · NovaTech107%\n\nBudgeted\n\n240h\n\nLogged\n\n198h\n\nRemaining\n\n42h\n\nBudget Control\n\n## See the overage\nbefore it happens.\n\nBudget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.\n\n-   ✓Real-time budget vs actual\n-   ✓Overage alerts at your threshold\n-   ✓Per-project and per-client views\n-   ✓Hours or dollar-based budgets\n\nInvoicing\n\n## Invoice from\nsource, not memory.\n\nSelect a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.\n\n-   ✓Generate from tracked time entries\n-   ✓Grouped by task or category\n-   ✓Billable-only filter built in\n-   ✓Export-ready output\n\nInvoice previewReady to export\n\nAcme Corp\n\nMarch 1–31, 2026\n\nINV-0024\n\nDue Apr 14, 2026\n\nDesign system audit\n\n14.5 hrs · $150/hr\n\n$2,175\n\nHomepage copy\n\n6.25 hrs · $120/hr\n\n$750\n\nProject management\n\n3.0 hrs · $120/hr\n\n$360\n\nTotal due$3,285\n\nExport invoice →\n\n## How it works.\n\nThree steps. No setup ceremony. No onboarding calls required.\n\nSTEP 01\n\n### Set up a project.\n\nCreate a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.\n\nSTEP 02\n\n### Track time as you work.\n\nOpen a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.\n\nSTEP 03\n\n### Invoice with one click.\n\nSelect a billing period. Review grouped line items from real entries. Export. Done.\n\n## Free to start.\nScales when you do.\n\nEverything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.\n\nFree tier\n\n$0/ month\n\n-   ✓3 team members\n-   ✓5 clients\n-   ✓10 projects\n-   ✓Unlimited time tracking\n-   ✓Invoice generation\n-   ✓iOS & Android apps\n\nJoin the waitlist\n\nFAQ\n\n## Common questions\n\nEverything you need to know before getting started with Zentract.\n\nHow does Zentract help agencies track billable hours?\n\nHow is Zentract different from Harvest or Toggl?\n\nCan Zentract generate invoices from time tracking?\n\nIs Zentract free to use?\n\nWhat types of agencies and teams use Zentract?\n\nDoes Zentract prevent scope creep on client projects?\n\nDoes Zentract have mobile apps?\n\n## Every hour you worked\ndeserves to be invoiced.\n\nJoin early access. We'll reach out when your workspace is ready. No credit card required.\n\nJoin the waitlist\n\nNo credit card · No spam · Cancel anytime\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
  "markdownStats": {
    "images": 0,
    "links": 8,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 14
  },
  "tokens": {
    "htmlTokens": 30615,
    "markdownTokens": 1083,
    "reduction": 29532,
    "reductionPercent": 96
  },
  "score": {
    "score": 89,
    "grade": "B",
    "dimensions": {
      "semanticHtml": {
        "score": 83,
        "weight": 20,
        "grade": "B",
        "checks": {
          "uses_article_or_main": {
            "score": 100,
            "weight": 20,
            "details": "Has <main>"
          },
          "proper_heading_hierarchy": {
            "score": 85,
            "weight": 25,
            "details": "1 heading level skip(s)"
          },
          "semantic_elements": {
            "score": 32,
            "weight": 20,
            "details": "14 semantic elements, 134 divs (ratio: 9%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 100,
            "weight": 20,
            "details": "Avg div depth: 4.6, max: 8"
          }
        }
      },
      "contentEfficiency": {
        "score": 93,
        "weight": 25,
        "grade": "A",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "96% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 100,
            "weight": 30,
            "details": "Content ratio: 59.2% (60153 content chars / 101540 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 50,
            "weight": 15,
            "details": "21/466 elements with inline styles (4.5%)"
          },
          "reasonable_page_weight": {
            "score": 100,
            "weight": 15,
            "details": "HTML size: 99KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 77,
        "weight": 25,
        "grade": "B",
        "checks": {
          "has_llms_txt": {
            "score": 100,
            "weight": 20,
            "details": "llms.txt exists and is valid"
          },
          "has_robots_txt": {
            "score": 100,
            "weight": 10,
            "details": "robots.txt exists"
          },
          "robots_allows_ai_bots": {
            "score": 100,
            "weight": 15,
            "details": "All major AI bots allowed"
          },
          "has_sitemap": {
            "score": 100,
            "weight": 10,
            "details": "Sitemap found"
          },
          "supports_markdown_negotiation": {
            "score": 40,
            "weight": 25,
            "details": "CDN level (Cloudflare) — Content negotiation"
          },
          "has_content_signals": {
            "score": 60,
            "weight": 20,
            "details": "robots.txt: ai-train=no, search=yes, ai-input=yes"
          }
        }
      },
      "structuredData": {
        "score": 100,
        "weight": 15,
        "grade": "A",
        "checks": {
          "has_schema_org": {
            "score": 100,
            "weight": 30,
            "details": "JSON-LD found: Organization, WebApplication, FAQPage"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 154 chars"
          },
          "has_canonical_url": {
            "score": 100,
            "weight": 15,
            "details": "Canonical URL present"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"en\""
          }
        }
      },
      "accessibility": {
        "score": 100,
        "weight": 15,
        "grade": "A",
        "checks": {
          "content_without_js": {
            "score": 100,
            "weight": 40,
            "details": "Content available without JavaScript"
          },
          "reasonable_page_size": {
            "score": 100,
            "weight": 30,
            "details": "Page size: 99KB"
          },
          "fast_content_position": {
            "score": 100,
            "weight": 30,
            "details": "Main content starts at 13% of HTML"
          }
        }
      }
    }
  },
  "recommendations": [
    {
      "id": "add_markdown_negotiation",
      "priority": "high",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_markdown_negotiation.title",
      "descriptionKey": "rec.add_markdown_negotiation.description",
      "howToKey": "rec.add_markdown_negotiation.howto",
      "effort": "significant",
      "estimatedImpact": 6,
      "checkScore": 40,
      "checkDetails": "CDN level (Cloudflare) — Content negotiation"
    },
    {
      "id": "add_semantic_elements",
      "priority": "high",
      "category": "semanticHtml",
      "titleKey": "rec.add_semantic_elements.title",
      "descriptionKey": "rec.add_semantic_elements.description",
      "howToKey": "rec.add_semantic_elements.howto",
      "effort": "moderate",
      "estimatedImpact": 5,
      "checkScore": 32,
      "checkDetails": "14 semantic elements, 134 divs (ratio: 9%)"
    },
    {
      "id": "remove_inline_styles",
      "priority": "medium",
      "category": "contentEfficiency",
      "titleKey": "rec.remove_inline_styles.title",
      "descriptionKey": "rec.remove_inline_styles.description",
      "howToKey": "rec.remove_inline_styles.howto",
      "effort": "moderate",
      "estimatedImpact": 3,
      "checkScore": 50,
      "checkDetails": "21/466 elements with inline styles (4.5%)"
    }
  ],
  "llmsTxtPreview": "# zentract.io\n\n> One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.\n\n## Main\n- [Zentract — Agency Time Tracking & Client Billing Software](https://zentract.io): One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consulta…\n- [ZentractZENTRACT](https://zentract.io/)\n- [Sign in](https://zentract.io/sign-in)\n\n## Legal\n- [Privacy](https://zentract.io/privacy)\n- [Terms](https://zentract.io/terms)\n\n## Support\n- [Contact](https://zentract.io/contact)\n\n",
  "llmsTxtExisting": "# Zentract\n\n> Zentract is a project management and time tracking platform for professional services firms. \nIt helps teams manage clients, projects, tasks, time entries, billing, and reporting.\n\nImportant notes:\n- Public crawling rules are defined in robots.txt; see links below.\n\n\n## About Site\n\n- [Homepage](https://zentract.io)\n- [Privacy](https://zentract.io/privacy): Privacy policy\n- [Terms](https://zentract.io/terms): Terms of service\n- [Contact](https://zentract.io/contact): Contact us page\n- [robots.txt](https://zentract.io/robots.txt): Crawler access rules and disallowed paths\n- [Sitemap](https://zentract.io/sitemap.xml): Discoverable public pages",
  "emergingProtocols": {
    "oauthDiscovery": {
      "exists": true,
      "url": "https://zentract.io/.well-known/oauth-authorization-server",
      "issuer": "https://zentract.io",
      "authorizationEndpoint": "https://zentract.io/api/oauth2/authorize",
      "tokenEndpoint": "https://zentract.io/api/oauth2/token",
      "grantTypesSupported": [
        "authorization_code",
        "refresh_token"
      ],
      "scopesSupported": [
        "projects:read",
        "projects:write",
        "projects:delete",
        "tasks:read",
        "tasks:write",
        "tasks:delete",
        "clients:read",
        "clients:write",
        "clients:delete",
        "time-entries:read",
        "time-entries:write",
        "time-entries:delete",
        "invoices:read",
        "invoices:write",
        "invoices:delete",
        "proposals:read",
        "proposals:write",
        "proposals:delete",
        "reports:read",
        "reports:generate",
        "reports:delete",
        "teams:read",
        "teams:write",
        "users:read",
        "users:write",
        "organization:read",
        "organization:write",
        "notifications:read",
        "notifications:write",
        "attachments:read",
        "attachments:write"
      ]
    },
    "mcpServerCard": {
      "exists": false,
      "url": "https://zentract.io/.well-known/mcp.json"
    },
    "a2aAgentCard": {
      "exists": false,
      "url": "https://zentract.io/.well-known/agent.json"
    },
    "count": 1
  },
  "snippets": [
    {
      "id": "add_markdown_negotiation",
      "title": "Support Markdown for Agents",
      "description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
      "language": "html",
      "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
      "filename": "<head>",
      "stacks": [
        {
          "id": "html",
          "label": "HTML <head>",
          "language": "html",
          "filename": "<head>",
          "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        },
        {
          "id": "express",
          "label": "Express",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n  res.setHeader('Vary', 'Accept');\n  res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    res.type('text/markdown; charset=utf-8');\n    return res.send(renderMarkdown('page'));\n  }\n  res.render('page');\n});"
        },
        {
          "id": "fastify",
          "label": "Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n  reply.header('Vary', 'Accept');\n  reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n  }\n  return reply.view('/page.ejs');\n});"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "app/page/route.ts",
          "code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n  const accept = req.headers.get('accept') || '';\n  if (accept.includes('text/markdown')) {\n    return new Response(await renderMarkdown('page'), {\n      headers: {\n        'Content-Type': 'text/markdown; charset=utf-8',\n        'Vary': 'Accept',\n      },\n    });\n  }\n  // Fall through to the page component\n  return new Response(null, { status: 404 });\n}"
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n    if (!is_singular()) return;\n    $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n    if (strpos($accept, 'text/markdown') === false) return;\n    header('Content-Type: text/markdown; charset=utf-8');\n    header('Vary: Accept');\n    $post = get_queried_object();\n    echo \"# \" . get_the_title($post) . \"\\n\\n\";\n    echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n    exit;\n});"
        },
        {
          "id": "static",
          "label": "Hugo / Jekyll / Astro",
          "language": "txt",
          "filename": "static/page.md",
          "code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n#   <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        }
      ]
    }
  ]
}

使用我们的API以编程方式获取此内容(即将推出)

此JSON供内部使用 — 与Markdown和llms.txt文件不同,它不适合上传到您的网站。将其保存为基准值以跟踪评分变化,与开发团队共享,或集成到CI/CD流水线中。

分享您的结果

Twitter LinkedIn

嵌入您的徽章

将此徽章添加到您的网站。当您的 AI 就绪评分发生变化时,它会自动更新。

AgentReady.md score for zentract.io
Script 推荐
<script src="https://agentready.md/badge.js" data-id="81c0a9b4-c03e-446e-ae6a-e76950ad7f79" data-domain="zentract.io"></script>
Markdown
[![AgentReady.md score for zentract.io](https://agentready.md/badge/zentract.io.svg)](https://agentready.md/zh/r/81c0a9b4-c03e-446e-ae6a-e76950ad7f79)

即将推出:全域分析

爬取您的整个域名,生成llms.txt,并随时间监控您的AI就绪度评分。加入等候名单以获取通知。

您已加入名单!服务上线时我们会通知您。