#576 by GitHub stars

TencentEdgeOne/edgeone-makers-tools

EdgeOne Makers 全栈开发技能包 —— 涵盖 AI Agent 开发(DeepAgents、LangGraph、 Claude SDK、OpenAI Agents、CrewAI)、云函数(Node.js/Go/Python)、边缘函数、 KV 存储、中间件及快速部署,帮助 AI 编程助手准确高效地在 EdgeOne 平台上构建和发布应用。

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-agents/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-cli/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-cloud-functions/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-deploy/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-edge-functions/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-env-adaption/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-frameworks/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-middleware/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-migration/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-recipes/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

skills/edgeone-makers-tools/references/makers-storage/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

e6ead945373c → e6ead945373c

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → e6ead945373c

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit e6ead945373c8dc56dca91d3e586e3c7cccd0079

git clone --filter=blob:none --no-checkout https://github.com/TencentEdgeOne/edgeone-makers-tools.git .hotskills/tencentedgeone-edgeone-makers-tools && git -C .hotskills/tencentedgeone-edgeone-makers-tools checkout --detach e6ead945373c8dc56dca91d3e586e3c7cccd0079 # Copy each selected skill directory from .hotskills/tencentedgeone-edgeone-makers-tools into .claude/skills/<skill-name>/
git clone --filter=blob:none --no-checkout https://github.com/TencentEdgeOne/edgeone-makers-tools.git .hotskills/tencentedgeone-edgeone-makers-tools && git -C .hotskills/tencentedgeone-edgeone-makers-tools checkout --detach e6ead945373c8dc56dca91d3e586e3c7cccd0079 # Copy each selected skill directory from .hotskills/tencentedgeone-edgeone-makers-tools into .agents/skills/<skill-name>/
1.8kGitHub stars
-5stars in 7 days
13skills in this repository
3commits in 30 days

Heat

2.3
  • Star growth, last 7 daysAhead of 2% of tracked repositories
  • Star growth, last 24 hoursAhead of 70% of tracked repositories
  • Rank movement, last 7 daysAhead of 6% of tracked repositories
  • Commits, last 30 daysAhead of 64% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Jul 30, 2026Nov 6, 20261,844

Individual skills in this repository

How it works

edgeone-makers-tools

When your agent uses it

EdgeOne Makers 全栈开发技能包 —— 涵盖 AI Agent 开发(DeepAgents、LangGraph、 Claude SDK、OpenAI Agents、CrewAI)、云函数(Node.js/Go/Python)、边缘函数、 KV 存储、中间件及快速部署,帮助 AI 编程助手准确高效地在 EdgeOne 平台上构建和发布应用。

What it loads into context

Frontmatter

155 tokens

Always available to the agent

SKILL.md

451 tokens

When the skill is activated

Reference documents

36,775 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

    Scripts executed separately

    • hooks/signal-log.mjs
    • hooks/signal-log.test.mjs
    • hooks/validate-write.mjs
    • hooks/validate-write.test.mjs
    • package.json
    • scripts/add-toc.mjs
    • scripts/archive-traffic.mjs
    • scripts/build.mjs
    • scripts/doctor.mjs
    • scripts/doctor.test.mjs
    • scripts/lib/skill-graph.mjs
    • scripts/lib/skill-graph.test.mjs

    Files

    • .claude-plugin/marketplace.jsonasset597 bytes
    • .claude-plugin/plugin.jsonasset248 bytes
    • .codebuddy-plugin/manifest.jsonasset283 bytes
    • .codebuddy-plugin/marketplace.jsonasset596 bytes
    • .cursor-plugin/plugin.jsonasset248 bytes
    • .github/dependabot.ymlasset205 bytes
    • .github/workflows/build.ymlasset957 bytes
    • .github/workflows/publish-skillhub.ymlasset7,991 bytes
    • .github/workflows/traffic-archive.ymlasset1,165 bytes
    • .gitignoreasset305 bytes
    • AGENTS.mddoc1,483 bytes
    • BRANCH.mddoc2,180 bytes
    • CLAUDE.mddoc1,777 bytes
    • LICENSEasset1,072 bytes
    • README.mddoc5,093 bytes
    • SECURITY.mddoc1,291 bytes
    • SKILL.mdcore1,722 bytes
    • _meta.jsonasset5,245 bytes
    • codex/makers-agents.mddoc23,581 bytes
    • codex/makers-cli.mddoc2,957 bytes
    • codex/makers-cloud-functions.mddoc950 bytes
    • codex/makers-deploy.mddoc38,072 bytes
    • codex/makers-edge-functions.mddoc5,014 bytes
    • codex/makers-env-adaption.mddoc19,422 bytes
    • codex/makers-frameworks.mddoc10,142 bytes
    • codex/makers-middleware.mddoc4,918 bytes
    • codex/makers-migration.mddoc16,680 bytes
    • codex/makers-recipes.mddoc11,876 bytes
    • codex/makers-storage.mddoc3,787 bytes
    • cursor/rules/makers-agents.mdcasset23,581 bytes
    • cursor/rules/makers-cli.mdcasset2,957 bytes
    • cursor/rules/makers-cloud-functions.mdcasset950 bytes
    • cursor/rules/makers-deploy.mdcasset38,072 bytes
    • cursor/rules/makers-edge-functions.mdcasset5,014 bytes
    • cursor/rules/makers-env-adaption.mdcasset19,422 bytes
    • cursor/rules/makers-frameworks.mdcasset10,142 bytes
    • cursor/rules/makers-middleware.mdcasset4,918 bytes
    • cursor/rules/makers-migration.mdcasset16,680 bytes
    • cursor/rules/makers-recipes.mdcasset11,876 bytes
    • cursor/rules/makers-storage.mdcasset3,787 bytes
    • hooks/hooks.jsonasset317 bytes
    • hooks/signal-log.mjsruns1,341 bytes
    • hooks/signal-log.test.mjsruns1,603 bytes
    • hooks/validate-write.mjsruns8,634 bytes
    • hooks/validate-write.test.mjsruns11,091 bytes
    • package-lock.jsonasset203 bytes
    • package.jsonruns347 bytes
    • scripts/add-toc.mjsruns3,205 bytes
    • scripts/archive-traffic.mjsruns6,507 bytes
    • scripts/build.mjsruns2,772 bytes
    • scripts/doctor.mjsruns4,115 bytes
    • scripts/doctor.test.mjsruns2,389 bytes
    • scripts/lib/skill-graph.mjsruns12,828 bytes
    • scripts/lib/skill-graph.test.mjsruns20,772 bytes
    Read SKILL.md
    
    # EdgeOne Makers Skills
    
    When you need EdgeOne Makers platform development guidance, read the matching Skill based on the task:
    
    | Task | Read |
    |------|------|
    | Web framework support — which adapter, build output, 404, and unsupported features (Next.js, Nuxt, Astro, SvelteKit, React Router, TanStack Start, Vike, Vite, Hugo) | skills/makers-frameworks/SKILL.md |
    | AI Agent development (DeepAgents, LangGraph, Claude SDK, OpenAI Agents, CrewAI) | skills/makers-agents/SKILL.md |
    | Deploy project to EdgeOne | skills/makers-deploy/SKILL.md |
    | Edge Functions (V8 lightweight functions) | skills/makers-edge-functions/SKILL.md |
    | Cloud Functions (Node.js / Go / Python APIs) | skills/makers-cloud-functions/SKILL.md |
    | KV + Blob Storage | skills/makers-storage/SKILL.md |
    | Middleware (auth, rewrites, routing) | skills/makers-middleware/SKILL.md |
    | CLI command reference | skills/makers-cli/SKILL.md |
    View the complete source on GitHub

    Skills included

    • edgeone-makers-tools
    • edgeone-makers-tools
    • edgeone-makers-agents
    • edgeone-makers-cli
    • edgeone-makers-cloud-functions
    • edgeone-makers-deploy
    • edgeone-makers-edge-functions
    • edgeone-makers-env-adaption
    • edgeone-makers-frameworks
    • edgeone-makers-middleware
    • edgeone-makers-migration
    • edgeone-makers-recipes
    • edgeone-makers-storage

    Repository facts

    License
    MIT
    Created
    Mar 13, 2026
    Last pushed
    Nov 5, 2026
    Forks
    141
    Open issues
    1
    Project activity
    Active

    Rank over the last 12 weeks

    Now #576 · best #401 · down 108 in 30 days

    1. #562 on Nov 1
    2. #566 on Nov 2
    3. #570 on Nov 3
    4. #571 on Nov 4
    5. #573 on Nov 5
    6. #576 since Nov 6
    13 earlier periods
    1. #390 on Aug 1
    2. #396 on Aug 13
    3. #401 on Aug 17
    4. #425 on Sep 6
    5. #440 on Sep 8
    6. #447 on Sep 17
    7. #468 on Sep 29
    8. #491 on Oct 17
    9. #542 on Oct 25
    10. #552 on Oct 28
    11. #556 on Oct 29
    12. #557 on Oct 30
    13. #559 on Oct 31

    Before you install

    Network or broad shell

    Automated signals, not a guarantee

    Checked Nov 3, 2026

    Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

    Show 44 notes
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-agents/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-cli/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-cli/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-cli/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-cli/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-cli/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-deploy/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-deploy/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-deploy/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-deploy/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    • skills/edgeone-makers-tools/references/makers-deploy/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
    Show all 680 signals by file

    .github/workflows/publish-skillhub.yml

    • Network accessline 67
      - name: Install SkillHub CLI         run: |           curl -fsSL https://skillhub.cn/install/install.sh | bash -s -- --cli-only
    • Network accessline 68
      run: |           curl -fsSL https://skillhub.cn/install/install.sh | bash -s -- --cli-only           echo "$HOME/.local/bin" >> "$GITHUB_PATH"
    • Dangerous shell operationline 69
      curl -fsSL https://skillhub.cn/install/install.sh | bash -s -- --cli-only
    • Network accessline 69
      curl -fsSL https://skillhub.cn/install/install.sh | bash -s -- --cli-only
    • Network accessline 79
      [Credential-related source omitted]
    • Network accessline 80
      run: |           skillhub login --key "$SKILLHUB_API_TOKEN" --host https://api.skillhub.cn           skillhub auth whoami
    • Network accessline 81
      [Credential-related source omitted]
    • Access to secretsline 81
      [Credential-related source omitted]

    .gitignore

    • Access to secretsline 4
      [Credential-related source omitted]

    README.md

    • Network accessline 3
      Official AI Agent Skills for developing and deploying projects on [EdgeOne Makers](https://pages.edgeone.ai/).
    • Network accessline 125
      The skill follows the [skill-creator](https://github.com/anthropics/skills) standard:
    • Network accessline 140
      - **Node.js** ≥ 16 - An EdgeOne account: [China site](https://console.cloud.tencent.com/edgeone/pages) | [Global site](https://pages.edgeone.ai)
    • Network accessline 141
      - An EdgeOne account: [China site](https://console.cloud.tencent.com/edgeone/pages) | [Global site](https://pages.edgeone.ai)

    SECURITY.md

    • Network accessline 16
      - **Contact**: open a private security advisory via GitHub's   [Report a vulnerability](https://github.com/TencentEdgeOne/edgeone-makers-tools/security/advisories/new)
    • Network accessline 17
      [Report a vulnerability](https://github.com/TencentEdgeOne/edgeone-makers-tools/security/advisories/new)
    • Network accessline 30
      the CI workflows, or the published skill artifacts are in scope. Vulnerabilities in the EdgeOne platform itself should be reported through the [Tencent Security Response Center](https://security.tencent.com).
    • Network accessline 32
      [Tencent Security Response Center](https://security.tencent.com).

    codex/makers-agents.md

    • Access to secretsline 22
      [Credential-related source omitted]
    • Network accessline 34
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 70
      [Credential-related source omitted]
    • Access to secretsline 73
      [Credential-related source omitted]
    • Access to secretsline 100
      [Credential-related source omitted]
    • Access to secretsline 135
      [Credential-related source omitted]
    • Access to secretsline 289
      [Credential-related source omitted]
    • Access to secretsline 297
      [Credential-related source omitted]
    • Access to secretsline 301
      [Credential-related source omitted]
    • Access to secretsline 311
      [Credential-related source omitted]
    • Access to secretsline 316
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 326
      [Credential-related source omitted]
    • Access to secretsline 342
      [Credential-related source omitted]
    • Access to secretsline 365
      [Credential-related source omitted]
    • Access to secretsline 368
      [Credential-related source omitted]
    • Access to secretsline 399
      [Credential-related source omitted]

    codex/makers-cli.md

    • Dangerous shell operationline 38
      | `edgeone makers env rm <KEY>` | Remove a remote environment variable |
    • Network accessline 75
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Network accessline 76
      edgeone makers env set SUPABASE_URL "https://xxx.supabase.co"

    codex/makers-cloud-functions.md

    • Access to secretsline 10
      [Credential-related source omitted]

    codex/makers-deploy.md

    • Network accessline 41
      https://my-app-w9t0lxe8.edgeone.cool
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 54
      🌐 Live URL: https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 225
      [Credential-related source omitted]
    • Network accessline 226
      1. Go to the console:    - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings    - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 227
      - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 228
      - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Instruction override signalline 416
      ⛔ **The listener is invisible to the user — never narrate it.** Do not tell the user a listener/监听器 is running, that you are "waiting for the claim callback", or any other internal mechanism status (state files, JSON parsing, ports). The us
    • Network accessline 473
      {"status":"success","url":"https://my-project-abc123.edgeone.cool?<auth_query_params>","type":"preset","projectId":"makers-xxxxxxxx","deploymentId":"dp-xxxx","consoleUrl":"https://console.cloud.tencent.com/edgeone/pages/project/makers-xxxxx
    • Network accessline 485
      [cli][✔] Deploy Success EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 486
      EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 488
      EDGEONE_PROJECT_ID=makers-xxxxxxxx [cli][✔] You can view your deployment in the EdgeOne Makers Console at: https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 490
      https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 512
      [Credential-related source omitted]
    • Network accessline 514
      > --- > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`
    • Network accessline 515
      > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...` >
    • Network accessline 516
      > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`

    codex/makers-edge-functions.md

    • Network accessline 143
      Edge Functions run on V8 and support these Web Standard APIs: - **Fetch API** — `fetch()` for outbound HTTP requests
    • Network accessline 144
      - **Fetch API** — `fetch()` for outbound HTTP requests

    codex/makers-env-adaption.md

    • Network accessline 36
      │ Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 37
      Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅             └─ Still iterating? ───┤
    • Network accessline 38
      preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 43
      | What you want to do | Correct approach | Wrong approach (breaks) | |---|---|---| | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 44
      [Credential-related source omitted]
    • Network accessline 45
      | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 47
      | Start dev server | `edgeone makers dev --name <p> --skip-env-sync` | ❌ `python -m http.server` / `npx serve` | | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | 
    • Network accessline 48
      | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | ❌ `curl localhost:8088` / plain `curl` (proxy + IPv6 → 404/000) |
    • Network accessline 49
      | Verify dev server is up (user-facing) | `present_files(http://127.0.0.1:8088/)` (platform tunnel) | ❌ Telling user to open `127.0.0.1:8088` — their browser can't reach the sandbox |
    • Network accessline 125
      The Bash tool and `edgeone makers dev` run **in the same sandbox (same machine)**, so the loopback dev server IS reachable from Bash. The earlier claim that "Bash curl is isolated and returns 404" is wrong — the failures are caused by the *
    • Network accessline 128
      |---------|--------|------| | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://12
    • Network accessline 129
      | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` | | Bash tool
    • Network accessline 130
      | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` |
    • Network accessline 131
      | Bash tool curl (agent-side API checks) | ✅ Available **only with `--noproxy '*'` + `127.0.0.1`** | Plain `curl localhost:8088` fails: (a) `localhost`→`::1` (§4), (b) proxy hijacks the request (§5) |
    • Network accessline 133
      **Practical rule**: - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 134
      - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 135
      - Do NOT rely on Bash curl to show the page to the user. The user's browser cannot reach `127.0.0.1:8088` inside the sandbox; for a user-facing preview, pass the dev URL to `present_files` (platform tunnel) or deploy and share the live URL.
    • Network accessline 144
      # Correct curl http://127.0.0.1:8088/
    • Network accessline 145
      curl http://127.0.0.1:8088/
    • Network accessline 147
      # Wrong (404 in the sandbox) curl http://localhost:8088/
    • Network accessline 148
      curl http://localhost:8088/
    • Network accessline 153
      present_files: http://127.0.0.1:8088/
    • Network accessline 158
      ### 5. Proxy hijacking (curl needs --noproxy)
    • Network accessline 160
      The sandbox injects an `http_proxy` environment variable; curl goes through the proxy by default, which swallows the SSE streaming response.
    • Network accessline 163
      # Correct curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 164
      curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 166
      # Wrong (returns "Empty reply" / status 000) curl http://127.0.0.1:8088/api/chat
    • Network accessline 167
      curl http://127.0.0.1:8088/api/chat
    • Network accessline 209
      1. Start `edgeone makers dev --name <project> --skip-env-sync` (**background async**, see §7) 2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `local
    • Network accessline 210
      2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4) 4. Tell the user: "The project's local preview is running, please check it out
    • Network accessline 211
      3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4)
    • Network accessline 221
      # ✅ Correct present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 222
      present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 223
      [Credential-related source omitted]
    • Network accessline 230
      [Credential-related source omitted]
    • Network accessline 231
      [Credential-related source omitted]
    • Network accessline 262
      Note: the value is a **bare host**, without an `http://` prefix and without a port.

    codex/makers-migration.md

    • Access to secretsline 15
      [Credential-related source omitted]
    • Access to secretsline 51
      [Credential-related source omitted]
    • Access to secretsline 59
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 99
      [Credential-related source omitted]
    • Access to secretsline 107
      [Credential-related source omitted]
    • Access to secretsline 120
      [Credential-related source omitted]
    • Access to secretsline 151
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 267
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 336
      [Credential-related source omitted]
    • Network accessline 354
      return createSSEResponse(async function* (sig) {     const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Network accessline 355
      const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Access to secretsline 359
      [Credential-related source omitted]
    • Network accessline 381
      // ❌ Before: plain fetch without conversation-id const response = await fetch('/api/chat', {
    • Network accessline 382
      const response = await fetch('/api/chat', {
    • Network accessline 388
      // ✅ After: with makers-conversation-id header const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {
    • Network accessline 389
      const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {   method: 'POST',
    • Network accessline 390
      const response = await fetch('/chat', {
    • Network accessline 403
      // ✅ Always pass conversation_id in body for /stop await fetch('/stop', {
    • Network accessline 404
      await fetch('/stop', {
    • Access to secretsline 449
      [Credential-related source omitted]

    codex/makers-recipes.md

    • Network accessline 13
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 15
      [Credential-related source omitted]
    • Network accessline 19
      > 🔗 **Load assets with page-relative URLs, never root-absolute**: in these no-build projects nothing rewrites `index.html`, so write `<link rel="stylesheet" href="style.css">` and `<script src="script.js"></script>` — **not** `href="/style.
    • Network accessline 43
      const res = await fetch('/api/users');
    • Network accessline 91
      await fetch('/api/messages', {                     // post
    • Network accessline 94
      body: JSON.stringify({ name, text }), }); const { items } = await fetch('/api/messages').then((r) => r.json());  // list
    • Network accessline 96
      const { items } = await fetch('/api/messages').then((r) => r.json());  // list

    cursor/rules/makers-agents.mdc

    • Access to secretsline 22
      [Credential-related source omitted]
    • Network accessline 34
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 70
      [Credential-related source omitted]
    • Access to secretsline 73
      [Credential-related source omitted]
    • Access to secretsline 100
      [Credential-related source omitted]
    • Access to secretsline 135
      [Credential-related source omitted]
    • Access to secretsline 289
      [Credential-related source omitted]
    • Access to secretsline 297
      [Credential-related source omitted]
    • Access to secretsline 301
      [Credential-related source omitted]
    • Access to secretsline 311
      [Credential-related source omitted]
    • Access to secretsline 316
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 326
      [Credential-related source omitted]
    • Access to secretsline 342
      [Credential-related source omitted]
    • Access to secretsline 365
      [Credential-related source omitted]
    • Access to secretsline 368
      [Credential-related source omitted]
    • Access to secretsline 399
      [Credential-related source omitted]

    cursor/rules/makers-cli.mdc

    • Dangerous shell operationline 38
      | `edgeone makers env rm <KEY>` | Remove a remote environment variable |
    • Network accessline 74
      ```bash edgeone makers env set WSA_API_KEY "your-key" edgeone makers env set SUPABASE_URL "https://xxx.supabase.co"
    • Network accessline 75
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Network accessline 76
      edgeone makers env set SUPABASE_URL "https://xxx.supabase.co"

    cursor/rules/makers-cloud-functions.mdc

    • Access to secretsline 10
      [Credential-related source omitted]

    cursor/rules/makers-deploy.mdc

    • Network accessline 39
      ❌ WRONG (truncated — will 401):    ```    https://my-app-w9t0lxe8.edgeone.cool
    • Network accessline 40
      ```    https://my-app-w9t0lxe8.edgeone.cool    ```
    • Network accessline 41
      https://my-app-w9t0lxe8.edgeone.cool
    • Network accessline 44
      [Credential-related source omitted]
    • Network accessline 45
      [Credential-related source omitted]
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 52
      4. **The deploy URL MUST be placed at the very top of the visible reply body (own line, code block, or heading — not inline, not mid-reply), AND ALSO pinned via `present_files` (or the IDE's preview tool) to the side panel.** Two UI failure
    • Network accessline 53
      ```    🌐 Live URL: https://my-project-abc123.edgeone.cool?<auth_query_params>    ```
    • Network accessline 54
      🌐 Live URL: https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 225
      [Credential-related source omitted]
    • Network accessline 226
      1. Go to the console:    - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings    - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 227
      - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 228
      - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Instruction override signalline 416
      ⛔ **The listener is invisible to the user — never narrate it.** Do not tell the user a listener/监听器 is running, that you are "waiting for the claim callback", or any other internal mechanism status (state files, JSON parsing, ports). The us
    • Network accessline 472
      ```json {"status":"success","url":"https://my-project-abc123.edgeone.cool?<auth_query_params>","type":"preset","projectId":"makers-xxxxxxxx","deploymentId":"dp-xxxx","consoleUrl":"https://console.cloud.tencent.com/edgeone/pages/project/make
    • Network accessline 473
      {"status":"success","url":"https://my-project-abc123.edgeone.cool?<auth_query_params>","type":"preset","projectId":"makers-xxxxxxxx","deploymentId":"dp-xxxx","consoleUrl":"https://console.cloud.tencent.com/edgeone/pages/project/makers-xxxxx
    • Network accessline 484
      ``` [cli][✔] Deploy Success EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 485
      [cli][✔] Deploy Success EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params> EDGEONE_DEPLOY_TYPE=preset
    • Network accessline 486
      EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 488
      EDGEONE_PROJECT_ID=makers-xxxxxxxx [cli][✔] You can view your deployment in the EdgeOne Makers Console at: https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 489
      [cli][✔] You can view your deployment in the EdgeOne Makers Console at: https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx ```
    • Network accessline 490
      https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 512
      [Credential-related source omitted]
    • Network accessline 514
      > --- > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`
    • Network accessline 515
      > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...` >
    • Network accessline 516
      > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`

    cursor/rules/makers-edge-functions.mdc

    • Network accessline 143
      Edge Functions run on V8 and support these Web Standard APIs: - **Fetch API** — `fetch()` for outbound HTTP requests
    • Network accessline 144
      - **Fetch API** — `fetch()` for outbound HTTP requests

    cursor/rules/makers-env-adaption.mdc

    • Network accessline 36
      │ Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 37
      Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅             └─ Still iterating? ───┤
    • Network accessline 38
      preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 43
      | What you want to do | Correct approach | Wrong approach (breaks) | |---|---|---| | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 44
      [Credential-related source omitted]
    • Network accessline 45
      | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 47
      | Start dev server | `edgeone makers dev --name <p> --skip-env-sync` | ❌ `python -m http.server` / `npx serve` | | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | 
    • Network accessline 48
      | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | ❌ `curl localhost:8088` / plain `curl` (proxy + IPv6 → 404/000) |
    • Network accessline 49
      | Verify dev server is up (user-facing) | `present_files(http://127.0.0.1:8088/)` (platform tunnel) | ❌ Telling user to open `127.0.0.1:8088` — their browser can't reach the sandbox |
    • Network accessline 125
      The Bash tool and `edgeone makers dev` run **in the same sandbox (same machine)**, so the loopback dev server IS reachable from Bash. The earlier claim that "Bash curl is isolated and returns 404" is wrong — the failures are caused by the *
    • Network accessline 128
      |---------|--------|------| | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://12
    • Network accessline 129
      | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` | | Bash tool
    • Network accessline 130
      | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` |
    • Network accessline 131
      | Bash tool curl (agent-side API checks) | ✅ Available **only with `--noproxy '*'` + `127.0.0.1`** | Plain `curl localhost:8088` fails: (a) `localhost`→`::1` (§4), (b) proxy hijacks the request (§5) |
    • Network accessline 133
      **Practical rule**: - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 134
      - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 135
      - Do NOT rely on Bash curl to show the page to the user. The user's browser cannot reach `127.0.0.1:8088` inside the sandbox; for a user-facing preview, pass the dev URL to `present_files` (platform tunnel) or deploy and share the live URL.
    • Network accessline 143
      ```bash # Correct curl http://127.0.0.1:8088/
    • Network accessline 145
      curl http://127.0.0.1:8088/
    • Network accessline 147
      # Wrong (404 in the sandbox) curl http://localhost:8088/
    • Network accessline 148
      curl http://localhost:8088/
    • Network accessline 151
      The preview URL must also use `127.0.0.1`: ``` present_files: http://127.0.0.1:8088/
    • Network accessline 152
      ``` present_files: http://127.0.0.1:8088/ ```
    • Network accessline 153
      present_files: http://127.0.0.1:8088/
    • Network accessline 158
      ### 5. Proxy hijacking (curl needs --noproxy)
    • Network accessline 160
      The sandbox injects an `http_proxy` environment variable; curl goes through the proxy by default, which swallows the SSE streaming response.
    • Network accessline 162
      ```bash # Correct curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 164
      curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 166
      # Wrong (returns "Empty reply" / status 000) curl http://127.0.0.1:8088/api/chat
    • Network accessline 167
      curl http://127.0.0.1:8088/api/chat
    • Network accessline 209
      1. Start `edgeone makers dev --name <project> --skip-env-sync` (**background async**, see §7) 2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `local
    • Network accessline 210
      2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4) 4. Tell the user: "The project's local preview is running, please check it out
    • Network accessline 211
      3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4)
    • Network accessline 220
      ```bash # ✅ Correct present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 221
      [Credential-related source omitted]
    • Network accessline 222
      present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 223
      [Credential-related source omitted]
    • Network accessline 230
      [Credential-related source omitted]
    • Network accessline 231
      [Credential-related source omitted]
    • Network accessline 262
      Note: the value is a **bare host**, without an `http://` prefix and without a port.

    cursor/rules/makers-migration.mdc

    • Access to secretsline 15
      [Credential-related source omitted]
    • Access to secretsline 51
      [Credential-related source omitted]
    • Access to secretsline 59
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 99
      [Credential-related source omitted]
    • Access to secretsline 107
      [Credential-related source omitted]
    • Access to secretsline 120
      [Credential-related source omitted]
    • Access to secretsline 151
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 267
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 336
      [Credential-related source omitted]
    • Network accessline 354
      return createSSEResponse(async function* (sig) {     const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Network accessline 355
      const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Access to secretsline 359
      [Credential-related source omitted]
    • Network accessline 380
      ```typescript // ❌ Before: plain fetch without conversation-id const response = await fetch('/api/chat', {
    • Network accessline 381
      // ❌ Before: plain fetch without conversation-id const response = await fetch('/api/chat', {   method: 'POST',
    • Network accessline 382
      const response = await fetch('/api/chat', {
    • Network accessline 388
      // ✅ After: with makers-conversation-id header const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {
    • Network accessline 389
      const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {   method: 'POST',
    • Network accessline 390
      const response = await fetch('/chat', {
    • Network accessline 402
      ```typescript // ✅ Always pass conversation_id in body for /stop await fetch('/stop', {
    • Network accessline 403
      // ✅ Always pass conversation_id in body for /stop await fetch('/stop', {   method: 'POST',
    • Network accessline 404
      await fetch('/stop', {
    • Access to secretsline 449
      [Credential-related source omitted]

    cursor/rules/makers-recipes.mdc

    • Network accessline 13
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 15
      [Credential-related source omitted]
    • Network accessline 19
      > 🔗 **Load assets with page-relative URLs, never root-absolute**: in these no-build projects nothing rewrites `index.html`, so write `<link rel="stylesheet" href="style.css">` and `<script src="script.js"></script>` — **not** `href="/style.
    • Network accessline 41
      Frontend calls API: ```javascript const res = await fetch('/api/users');
    • Network accessline 42
      ```javascript const res = await fetch('/api/users'); const users = await res.json();
    • Network accessline 43
      const res = await fetch('/api/users');
    • Network accessline 90
      ```javascript await fetch('/api/messages', {                     // post
    • Network accessline 91
      await fetch('/api/messages', {                     // post
    • Network accessline 94
      body: JSON.stringify({ name, text }), }); const { items } = await fetch('/api/messages').then((r) => r.json());  // list
    • Network accessline 95
      }); const { items } = await fetch('/api/messages').then((r) => r.json());  // list ```
    • Network accessline 96
      const { items } = await fetch('/api/messages').then((r) => r.json());  // list

    hooks/signal-log.mjs

    • Executable scriptline 1
      Executable file

    hooks/signal-log.test.mjs

    • Executable scriptline 1
      Executable file
    • Dangerous shell operationline 2
      import { mkdtemp, readFile, rm } from 'node:fs/promises';

    hooks/validate-write.mjs

    • Executable scriptline 1
      #!/usr/bin/env node

    hooks/validate-write.test.mjs

    • Executable scriptline 1
      Executable file
    • Dangerous shell operationline 2
      import { mkdtemp, readFile, rm } from 'node:fs/promises';
    • Access to secretsline 37
      [Credential-related source omitted]
    • Access to secretsline 89
      [Credential-related source omitted]
    • Access to secretsline 102
      [Credential-related source omitted]
    • Access to secretsline 127
      [Credential-related source omitted]
    • Access to secretsline 144
      [Credential-related source omitted]
    • Access to secretsline 183
      [Credential-related source omitted]

    package.json

    • Executable scriptline 1
      Executable file

    scripts/add-toc.mjs

    • Executable scriptline 1
      #!/usr/bin/env node

    scripts/archive-traffic.mjs

    • Executable scriptline 1
      #!/usr/bin/env node
    • Network accessline 31
      const API = "https://api.github.com";
    • Access to secretsline 33
      [Credential-related source omitted]
    • Network accessline 42
      async function apiGet(url) {   const res = await fetch(url, { headers: HEADERS });
    • Network accessline 43
      const res = await fetch(url, { headers: HEADERS });
    • Network accessline 149
      [Credential-related source omitted]
    • Network accessline 150
      [Credential-related source omitted]
    • Access to secretsline 150
      [Credential-related source omitted]

    scripts/build.mjs

    • Executable scriptline 1
      #!/usr/bin/env node

    scripts/doctor.mjs

    • Executable scriptline 1
      #!/usr/bin/env node

    scripts/doctor.test.mjs

    • Executable scriptline 1
      Executable file

    scripts/lib/skill-graph.mjs

    • Executable scriptline 1
      Executable file

    scripts/lib/skill-graph.test.mjs

    • Executable scriptline 1
      Executable file
    • Dangerous shell operationline 2
      import { chmod, mkdtemp, mkdir, writeFile, rm } from 'node:fs/promises';
    • Network accessline 81
      const root = await makeSkills({     'makers-a/SKILL.md':       '---\nname: a\n---\n\n[web](https://example.com/a.md) [anchor](references/kv.md#section)\n',
    • Network accessline 82
      'makers-a/SKILL.md':       '---\nname: a\n---\n\n[web](https://example.com/a.md) [anchor](references/kv.md#section)\n',     'makers-a/references/kv.md': '# KV\n',
    • Network accessline 83
      '---\nname: a\n---\n\n[web](https://example.com/a.md) [anchor](references/kv.md#section)\n',
    • Dangerous shell operationline 128
      // 先恢复权限,否则 rm 清不掉这棵树。
    • Dangerous shell operationline 271
      // 先恢复权限,否则 rm 清不掉这棵树。
    • Dangerous shell operationline 359
      // 先恢复权限,否则 rm 清不掉这棵树。

    skills/edgeone-makers-tools/references/makers-agents/SKILL.md

    • Access to secretsline 22
      [Credential-related source omitted]
    • Access to secretsline 22
      [Credential-related source omitted]
    • Network accessline 34
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Network accessline 34
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 70
      [Credential-related source omitted]
    • Access to secretsline 70
      [Credential-related source omitted]
    • Access to secretsline 73
      [Credential-related source omitted]
    • Access to secretsline 73
      [Credential-related source omitted]
    • Access to secretsline 100
      [Credential-related source omitted]
    • Access to secretsline 100
      [Credential-related source omitted]
    • Access to secretsline 135
      [Credential-related source omitted]
    • Access to secretsline 135
      [Credential-related source omitted]
    • Access to secretsline 289
      [Credential-related source omitted]
    • Access to secretsline 289
      [Credential-related source omitted]
    • Access to secretsline 297
      [Credential-related source omitted]
    • Access to secretsline 297
      [Credential-related source omitted]
    • Access to secretsline 301
      [Credential-related source omitted]
    • Access to secretsline 301
      [Credential-related source omitted]
    • Access to secretsline 311
      [Credential-related source omitted]
    • Access to secretsline 311
      [Credential-related source omitted]
    • Access to secretsline 316
      [Credential-related source omitted]
    • Access to secretsline 316
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 326
      [Credential-related source omitted]
    • Access to secretsline 326
      [Credential-related source omitted]
    • Access to secretsline 342
      [Credential-related source omitted]
    • Access to secretsline 342
      [Credential-related source omitted]
    • Access to secretsline 365
      [Credential-related source omitted]
    • Access to secretsline 365
      [Credential-related source omitted]
    • Access to secretsline 368
      [Credential-related source omitted]
    • Access to secretsline 368
      [Credential-related source omitted]
    • Access to secretsline 399
      [Credential-related source omitted]
    • Access to secretsline 399
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/capabilities/sandbox.md

    • Access to secretsline 15
      [Credential-related source omitted]
    • Access to secretsline 84
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/capabilities/store.md

    • Network accessline 199
      | Agent session state / checkpoints | `context.store` (langgraphCheckpointer) | Framework-native integration | | Conversation metadata (title, summary, tags) | `context.store` (updateConversation) | Lightweight, per-conversation | | Simple 
    • Network accessline 200
      | Conversation metadata (title, summary, tags) | `context.store` (updateConversation) | Lightweight, per-conversation | | Simple key-value pairs | [EdgeOne Makers KV](https://cloud.tencent.com/document/product/1552/127420) | Fast, edge-dist
    • Network accessline 201
      | Simple key-value pairs | [EdgeOne Makers KV](https://cloud.tencent.com/document/product/1552/127420) | Fast, edge-distributed, string values |
    • Network accessline 202
      | File / blob storage (images, PDFs, large objects) | [EdgeOne Makers Blob](https://cloud.tencent.com/document/product/1552/131425) | Object storage, supports large files |
    • Network accessline 211
      > > FYI: if your project grows to need more advanced storage, EdgeOne Makers also offers: > - **[KV](https://cloud.tencent.com/document/product/1552/127420)** — edge-distributed key-value store (fast reads, simple data)
    • Network accessline 212
      > FYI: if your project grows to need more advanced storage, EdgeOne Makers also offers: > - **[KV](https://cloud.tencent.com/document/product/1552/127420)** — edge-distributed key-value store (fast reads, simple data) > - **[Blob](https://c
    • Network accessline 213
      > - **[KV](https://cloud.tencent.com/document/product/1552/127420)** — edge-distributed key-value store (fast reads, simple data)
    • Network accessline 214
      > - **[Blob](https://cloud.tencent.com/document/product/1552/131425)** — object/file storage (images, PDFs, large files)

    skills/edgeone-makers-tools/references/makers-agents/references/capabilities/tools.md

    • Access to secretsline 149
      [Credential-related source omitted]
    • Access to secretsline 153
      [Credential-related source omitted]
    • Network accessline 156
      |----|------| | Env var name (EdgeOne Makers) | `WSA_API_KEY` | | Upstream service | [Tencent Cloud Web Search API (product 1806)](https://cloud.tencent.com/document/product/1806/130615) — a standalone service, separate product from EdgeOne
    • Network accessline 157
      [Credential-related source omitted]
    • Access to secretsline 157
      [Credential-related source omitted]
    • Network accessline 158
      | Upstream service | [Tencent Cloud Web Search API (product 1806)](https://cloud.tencent.com/document/product/1806/130615) — a standalone service, separate product from EdgeOne |
    • Network accessline 159
      | Console | <https://console.cloud.tencent.com/wsapi/index> |
    • Access to secretsline 160
      [Credential-related source omitted]
    • Access to secretsline 161
      [Credential-related source omitted]
    • Network accessline 166
      1. Open the [Tencent Cloud Web Search API console](https://console.cloud.tencent.com/wsapi/index) 2. Overview page → "Service API KEY" section → click "Create API KEY" 3. Enter a key name → confirm → **download the CSV or copy immediately**
    • Access to secretsline 169
      [Credential-related source omitted]
    • Access to secretsline 172
      [Credential-related source omitted]
    • Access to secretsline 175
      [Credential-related source omitted]
    • Access to secretsline 176
      [Credential-related source omitted]
    • Network accessline 195
      {     "title": "EdgeOne Makers Documentation",     "href": "https://edgeone.ai/docs/pages",
    • Network accessline 196
      "title": "EdgeOne Makers Documentation",     "href": "https://edgeone.ai/docs/pages",     "snippet": "EdgeOne Makers is a full-stack deployment platform...",
    • Network accessline 197
      "href": "https://edgeone.ai/docs/pages",
    • Network accessline 202
      {     "title": "Getting Started with EdgeOne",     "href": "https://cloud.tencent.com/document/product/1552",
    • Network accessline 203
      "title": "Getting Started with EdgeOne",     "href": "https://cloud.tencent.com/document/product/1552",     "snippet": "Quick start guide for EdgeOne acceleration...",
    • Network accessline 204
      "href": "https://cloud.tencent.com/document/product/1552",

    skills/edgeone-makers-tools/references/makers-agents/references/node-frameworks/claude-sdk.md

    • Network accessline 363
      // 1. /chat: header required const chatResp = await fetch('/chat', {
    • Network accessline 363
      // 1. /chat: header required const chatResp = await fetch('/chat', {
    • Network accessline 364
      const chatResp = await fetch('/chat', {
    • Network accessline 364
      const chatResp = await fetch('/chat', {
    • Network accessline 376
      // 2. /stop: ⚠<U+FE0F> NEVER send the header — pass via body async function stopAgent() {   await fetch('/stop', {
    • Network accessline 376
      // 2. /stop: ⚠<U+FE0F> NEVER send the header — pass via body async function stopAgent() {   await fetch('/stop', {
    • Network accessline 377
      async function stopAgent() {   await fetch('/stop', {     method: 'POST',
    • Network accessline 377
      async function stopAgent() {   await fetch('/stop', {     method: 'POST',
    • Network accessline 378
      await fetch('/stop', {
    • Network accessline 378
      await fetch('/stop', {

    skills/edgeone-makers-tools/references/makers-agents/references/node-frameworks/deepagents.md

    • Access to secretsline 72
      [Credential-related source omitted]
    • Access to secretsline 72
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/node-frameworks/langgraph.md

    • Access to secretsline 70
      [Credential-related source omitted]
    • Access to secretsline 70
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/node-frameworks/openai-agents.md

    • Access to secretsline 64
      [Credential-related source omitted]
    • Access to secretsline 64
      [Credential-related source omitted]
    • Access to secretsline 171
      [Credential-related source omitted]
    • Access to secretsline 171
      [Credential-related source omitted]
    • Access to secretsline 345
      [Credential-related source omitted]
    • Access to secretsline 345
      [Credential-related source omitted]
    • Network accessline 376
      export async function callChat(message: string) {   const conversationId = getOrCreateConversationId();   return fetch('/chat', {
    • Network accessline 376
      export async function callChat(message: string) {   const conversationId = getOrCreateConversationId();   return fetch('/chat', {
    • Network accessline 377
      const conversationId = getOrCreateConversationId();   return fetch('/chat', {     method: 'POST',
    • Network accessline 377
      const conversationId = getOrCreateConversationId();   return fetch('/chat', {     method: 'POST',
    • Network accessline 378
      return fetch('/chat', {
    • Network accessline 378
      return fetch('/chat', {
    • Network accessline 389
      export async function stopAgent() {   const conversationId = getOrCreateConversationId();   return fetch('/stop', {
    • Network accessline 389
      export async function stopAgent() {   const conversationId = getOrCreateConversationId();   return fetch('/stop', {
    • Network accessline 390
      const conversationId = getOrCreateConversationId();   return fetch('/stop', {     method: 'POST',
    • Network accessline 390
      const conversationId = getOrCreateConversationId();   return fetch('/stop', {     method: 'POST',
    • Network accessline 391
      return fetch('/stop', {
    • Network accessline 391
      return fetch('/stop', {
    • Network accessline 399
      export async function fetchHistory() {   const conversationId = getOrCreateConversationId();   const resp = await fetch('/history', {
    • Network accessline 399
      export async function fetchHistory() {   const conversationId = getOrCreateConversationId();   const resp = await fetch('/history', {
    • Network accessline 400
      const conversationId = getOrCreateConversationId();   const resp = await fetch('/history', {     method: 'POST',
    • Network accessline 400
      const conversationId = getOrCreateConversationId();   const resp = await fetch('/history', {     method: 'POST',
    • Network accessline 401
      const resp = await fetch('/history', {
    • Network accessline 401
      const resp = await fetch('/history', {

    skills/edgeone-makers-tools/references/makers-agents/references/platform/conversation-id.md

    • Network accessline 16
      ### Principle - The frontend framework is not prescribed — use Next.js, Vite, React, Vue, plain HTML, or any framework - Frontend calls agent endpoints via `fetch('/<action>', { method:'POST', body })`, then reads SSE with `EventSource` / `
    • Network accessline 18
      - Frontend calls agent endpoints via `fetch('/<action>', { method:'POST', body })`, then reads SSE with `EventSource` / `ReadableStream`
    • Network accessline 54
      const resp = await fetch('/chat', {
    • Network accessline 107
      // Note: fetch /stop must NOT carry makers-conversation-id. // Otherwise sticky routing pins to the same stuck chat instance and abortActiveRun cannot reach the runner. const resp = await fetch('/stop', {
    • Network accessline 108
      // Otherwise sticky routing pins to the same stuck chat instance and abortActiveRun cannot reach the runner. const resp = await fetch('/stop', {   method: 'POST',
    • Network accessline 109
      const resp = await fetch('/stop', {
    • Network accessline 118
      // /history is a cloud-function: there's no sticky-routing concern; either header or body works. const resp = await fetch('/history', {
    • Network accessline 119
      const resp = await fetch('/history', {

    skills/edgeone-makers-tools/references/makers-agents/references/platform/env-and-model.md

    • Access to secretsline 3
      [Credential-related source omitted]
    • Access to secretsline 9
      [Credential-related source omitted]
    • Network accessline 10
      - Missing variables must throw explicitly — never silently degrade - Default model as a constant: `@makers/deepseek-v4-flash` - ⭐ **If the template uses `context.tools.web_search`**: you must also configure `WSA_API_KEY` in the project's en
    • Network accessline 12
      [Credential-related source omitted]
    • Access to secretsline 12
      [Credential-related source omitted]
    • Access to secretsline 21
      [Credential-related source omitted]
    • Access to secretsline 27
      [Credential-related source omitted]
    • Access to secretsline 31
      [Credential-related source omitted]
    • Access to secretsline 45
      [Credential-related source omitted]
    • Access to secretsline 67
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/platform/node-entry.md

    • Dangerous shell operationline 36
      > - Does not contain `.edgeone` → the entire `.edgeone/` directory has been committed into the repo, **that is the violation** (either add it to `.gitignore`, or run `git rm -r --cached .edgeone` to clean up the commit)

    skills/edgeone-makers-tools/references/makers-agents/references/platform/python-entry.md

    • Access to secretsline 65
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/python-frameworks/claude-sdk.md

    • Access to secretsline 78
      [Credential-related source omitted]
    • Access to secretsline 78
      [Credential-related source omitted]
    • Access to secretsline 79
      [Credential-related source omitted]
    • Access to secretsline 79
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/python-frameworks/crewai.md

    • Access to secretsline 190
      [Credential-related source omitted]
    • Access to secretsline 190
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 210
      [Credential-related source omitted]
    • Access to secretsline 210
      [Credential-related source omitted]
    • Access to secretsline 222
      [Credential-related source omitted]
    • Access to secretsline 222
      [Credential-related source omitted]
    • Access to secretsline 381
      [Credential-related source omitted]
    • Access to secretsline 381
      [Credential-related source omitted]
    • Access to secretsline 537
      [Credential-related source omitted]
    • Access to secretsline 537
      [Credential-related source omitted]
    • Access to secretsline 546
      [Credential-related source omitted]
    • Access to secretsline 546
      [Credential-related source omitted]
    • Network accessline 557
      const resp = await fetch('/email/run', {
    • Network accessline 557
      const resp = await fetch('/email/run', {
    • Network accessline 566
      // /stop (NEVER include the header) await fetch('/email/stop', {
    • Network accessline 566
      // /stop (NEVER include the header) await fetch('/email/stop', {
    • Network accessline 567
      await fetch('/email/stop', {
    • Network accessline 567
      await fetch('/email/stop', {
    • Access to secretsline 600
      [Credential-related source omitted]
    • Access to secretsline 600
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/python-frameworks/deepagents.md

    • Access to secretsline 80
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/python-frameworks/langgraph.md

    • Access to secretsline 83
      [Credential-related source omitted]
    • Access to secretsline 83
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/python-frameworks/openai-agents.md

    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 115
      [Credential-related source omitted]
    • Access to secretsline 115
      [Credential-related source omitted]
    • Access to secretsline 116
      [Credential-related source omitted]
    • Access to secretsline 116
      [Credential-related source omitted]
    • Access to secretsline 258
      [Credential-related source omitted]
    • Access to secretsline 258
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-agents/references/review-checklist.md

    • Access to secretsline 74
      [Credential-related source omitted]
    • Access to secretsline 86
      [Credential-related source omitted]
    • Network accessline 110
      - [ ] ⭐ **Frontend**: every `fetch()` to an AI endpoint (`/chat`, `/outline`, `/create`, and every other endpoint under `agents/`) sends the HTTP header `makers-conversation-id: <uuid>`
    • Network accessline 212
      - [ ] ⭐ Every `fetch()` to an AI endpoint sends the HTTP header `makers-conversation-id: <uuid>` (`/chat`, `/outline`, `/create`, `/create-lite`, and every other endpoint under `agents/`)
    • Access to secretsline 226
      [Credential-related source omitted]
    • Access to secretsline 240
      [Credential-related source omitted]
    • Network accessline 254
      | Hand-assembling a history array to feed the model     | `toOpenAIInput` / `toAnthropicMessages`                                                     | | `/stop` sent with a `makers-conversation-id` header   | `/stop` uses **only** the body
    • Network accessline 256
      | Frontend calls AI endpoints without a conversation_id | every AI endpoint `fetch()` must send the header `makers-conversation-id: <uuid>`           |
    • Access to secretsline 268
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-cli/SKILL.md

    • Dangerous shell operationline 38
      | `edgeone makers env rm <KEY>` | Remove a remote environment variable |
    • Dangerous shell operationline 38
      | `edgeone makers env rm <KEY>` | Remove a remote environment variable |
    • Network accessline 75
      [Credential-related source omitted]
    • Network accessline 75
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Network accessline 76
      edgeone makers env set SUPABASE_URL "https://xxx.supabase.co"
    • Network accessline 76
      edgeone makers env set SUPABASE_URL "https://xxx.supabase.co"

    skills/edgeone-makers-tools/references/makers-cloud-functions/SKILL.md

    • Access to secretsline 10
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-cloud-functions/references/go-functions.md

    • Network accessline 168
      - **Gin** — [go-gin-template](https://github.com/TencentEdgeOne/go-gin-template)
    • Network accessline 169
      - **Echo** — [go-echo-template](https://github.com/TencentEdgeOne/go-echo-template)
    • Network accessline 170
      - **Chi** — [go-chi-template](https://github.com/TencentEdgeOne/go-chi-template)
    • Network accessline 196
      - **Handler mode**: [go-handler-template](https://github.com/TencentEdgeOne/go-handler-template) | [Preview](https://go-handler-template.edgeone.site)
    • Network accessline 197
      - **Gin framework**: [go-gin-template](https://github.com/TencentEdgeOne/go-gin-template) | [Preview](https://go-gin-template.edgeone.site)
    • Network accessline 198
      - **Echo framework**: [go-echo-template](https://github.com/TencentEdgeOne/go-echo-template) | [Preview](https://go-echo-template.edgeone.site)
    • Network accessline 199
      - **Chi framework**: [go-chi-template](https://github.com/TencentEdgeOne/go-chi-template) | [Preview](https://go-chi-template.edgeone.site)

    skills/edgeone-makers-tools/references/makers-cloud-functions/references/node-functions.md

    • Network accessline 274
      - **MySQL connection**: [mysql-template](https://github.com/TencentEdgeOne/mysql-template/) | [Preview](https://mysql-template.edgeone.run)
    • Network accessline 275
      - **Express**: [express-template](https://github.com/TencentEdgeOne/express-template/) | [Preview](https://express-template.edgeone.run)
    • Network accessline 276
      - **Koa**: [koa-template](https://github.com/TencentEdgeOne/koa-template/) | [Preview](https://koa-template.edgeone.run)
    • Network accessline 277
      - **AI Voice Chat (WebSocket)**: [makers-ai-voice-chat](https://github.com/TencentEdgeOne/pages-ai-voice-chat) | [Preview](https://pages-ai-voice-chat.edgeone.site)

    skills/edgeone-makers-tools/references/makers-cloud-functions/references/python-functions.md

    • Network accessline 260
      - **Handler mode**: [python-handler-template](https://github.com/TencentEdgeOne/python-handler-template) | [Preview](https://python-handler-template.edgeone.site)
    • Network accessline 261
      - **FastAPI**: [python-fastapi-template](https://github.com/TencentEdgeOne/python-fastapi-template) | [Preview](https://python-fastapi-template.edgeone.site)
    • Network accessline 262
      - **Flask**: [python-flask-template](https://github.com/TencentEdgeOne/python-flask-template) | [Preview](https://python-flask-template.edgeone.site)
    • Network accessline 263
      - **Django**: [python-django-template](https://github.com/TencentEdgeOne/python-django-template) | [Preview](https://python-django-template.edgeone.site)

    skills/edgeone-makers-tools/references/makers-cloud-functions/references/troubleshooting.md

    • Network accessline 21
      ### Symptom (observed in WorkBuddy) - Running `curl http://localhost:8088/` in WorkBuddy's Bash tool returns `404` + an HTML fallback page for any path
    • Network accessline 22
      - Running `curl http://localhost:8088/` in WorkBuddy's Bash tool returns `404` + an HTML fallback page for any path
    • Network accessline 32
      ### Correct verification methods (WorkBuddy, in priority order) 1. **WorkBuddy built-in browser preview** (pass `http://localhost:8088/` to `present_files`) — uses the host network, reliable. 2. **Have the user verify from their system term
    • Network accessline 33
      1. **WorkBuddy built-in browser preview** (pass `http://localhost:8088/` to `present_files`) — uses the host network, reliable. 2. **Have the user verify from their system terminal**: `curl -I http://localhost:8088/` or just open it in a br
    • Network accessline 34
      2. **Have the user verify from their system terminal**: `curl -I http://localhost:8088/` or just open it in a browser.
    • Network accessline 37
      ### Forbidden / misconceptions (WorkBuddy) - ❌ Do not judge whether the dev server is alive by the status code of WorkBuddy sandbox Bash `curl localhost:<port>`.
    • Network accessline 38
      - ❌ Do not judge whether the dev server is alive by the status code of WorkBuddy sandbox Bash `curl localhost:<port>`.
    • Network accessline 42
      ### Diagnosis procedure (host-agnostic; must use log evidence, not causal guesswork) 1. Send a probe with a unique marker: `curl ".../__probe_unique_xxx__"`.
    • Network accessline 43
      1. Send a probe with a unique marker: `curl ".../__probe_unique_xxx__"`.

    skills/edgeone-makers-tools/references/makers-deploy/SKILL.md

    • Network accessline 41
      https://my-app-w9t0lxe8.edgeone.cool
    • Network accessline 41
      https://my-app-w9t0lxe8.edgeone.cool
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 54
      🌐 Live URL: https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 54
      🌐 Live URL: https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 225
      [Credential-related source omitted]
    • Network accessline 225
      [Credential-related source omitted]
    • Network accessline 226
      1. Go to the console:    - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings    - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 226
      1. Go to the console:    - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings    - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 227
      - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 227
      - **China**: https://console.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 228
      - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Network accessline 228
      - **Global**: https://console.intl.cloud.tencent.com/edgeone/pages?tab=settings
    • Instruction override signalline 416
      ⛔ **The listener is invisible to the user — never narrate it.** Do not tell the user a listener/监听器 is running, that you are "waiting for the claim callback", or any other internal mechanism status (state files, JSON parsing, ports). The us
    • Instruction override signalline 416
      ⛔ **The listener is invisible to the user — never narrate it.** Do not tell the user a listener/监听器 is running, that you are "waiting for the claim callback", or any other internal mechanism status (state files, JSON parsing, ports). The us
    • Network accessline 473
      {"status":"success","url":"https://my-project-abc123.edgeone.cool?<auth_query_params>","type":"preset","projectId":"makers-xxxxxxxx","deploymentId":"dp-xxxx","consoleUrl":"https://console.cloud.tencent.com/edgeone/pages/project/makers-xxxxx
    • Network accessline 473
      {"status":"success","url":"https://my-project-abc123.edgeone.cool?<auth_query_params>","type":"preset","projectId":"makers-xxxxxxxx","deploymentId":"dp-xxxx","consoleUrl":"https://console.cloud.tencent.com/edgeone/pages/project/makers-xxxxx
    • Network accessline 485
      [cli][✔] Deploy Success EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 485
      [cli][✔] Deploy Success EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 486
      EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 486
      EDGEONE_DEPLOY_URL=https://my-project-abc123.edgeone.cool?<auth_query_params>
    • Network accessline 488
      EDGEONE_PROJECT_ID=makers-xxxxxxxx [cli][✔] You can view your deployment in the EdgeOne Makers Console at: https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 488
      EDGEONE_PROJECT_ID=makers-xxxxxxxx [cli][✔] You can view your deployment in the EdgeOne Makers Console at: https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 490
      https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 490
      https://console.cloud.tencent.com/edgeone/pages/project/pages-xxxxxxxx/deployment/xxxxxxx
    • Network accessline 512
      [Credential-related source omitted]
    • Network accessline 512
      [Credential-related source omitted]
    • Network accessline 514
      > --- > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`
    • Network accessline 514
      > --- > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`
    • Network accessline 515
      > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...` >
    • Network accessline 515
      > > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...` >
    • Network accessline 516
      > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`
    • Network accessline 516
      > - **Console URL**: `https://console.cloud.tencent.com/edgeone/pages/project/...`

    skills/edgeone-makers-tools/references/makers-deploy/references/anonymous-deploy.md

    • Network accessline 73
      [Credential-related source omitted]
    • Network accessline 73
      [Credential-related source omitted]
    • Network accessline 74
      [Credential-related source omitted]
    • Network accessline 74
      [Credential-related source omitted]
    • Network accessline 75
      [Credential-related source omitted]
    • Network accessline 75
      [Credential-related source omitted]
    • Network accessline 77
      [Credential-related source omitted]
    • Network accessline 77
      [Credential-related source omitted]
    • Network accessline 78
      [Credential-related source omitted]
    • Network accessline 78
      [Credential-related source omitted]
    • Network accessline 79
      [Credential-related source omitted]
    • Network accessline 79
      [Credential-related source omitted]
    • Network accessline 175
      |-----------|-----------| | `--site` passed | The CLI uses it as-is and skips detection. Prefer this in Agent/CI contexts for determinism. | | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s tim
    • Network accessline 175
      |-----------|-----------| | `--site` passed | The CLI uses it as-is and skips detection. Prefer this in Agent/CI contexts for determinism. | | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s tim
    • Network accessline 176
      | `--site` passed | The CLI uses it as-is and skips detection. Prefer this in Agent/CI contexts for determinism. | | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s timeout): `isCN: true` → `chi
    • Network accessline 176
      | `--site` passed | The CLI uses it as-is and skips detection. Prefer this in Agent/CI contexts for determinism. | | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s timeout): `isCN: true` → `chi
    • Network accessline 177
      | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s timeout): `isCN: true` → `china`, otherwise `global`. |
    • Network accessline 177
      | `--site` omitted | **The CLI itself** issues `GET https://api.edgeone.ai/e-func/ip/isCN` (3 s timeout): `isCN: true` → `china`, otherwise `global`. |
    • Network accessline 298
      # 2. Verify the deployment is live curl -sSI "<url from the json>" | head -1
    • Network accessline 298
      # 2. Verify the deployment is live curl -sSI "<url from the json>" | head -1
    • Network accessline 299
      curl -sSI "<url from the json>" | head -1
    • Network accessline 299
      curl -sSI "<url from the json>" | head -1

    skills/edgeone-makers-tools/references/makers-deploy/references/command-reference.md

    • Network accessline 28
      edgeone makers dev    # http://localhost:8088/
    • Access to secretsline 35
      [Credential-related source omitted]
    • Dangerous shell operationline 37
      edgeone makers env rm KEY      # Remove

    skills/edgeone-makers-tools/references/makers-edge-functions/SKILL.md

    • Network accessline 143
      Edge Functions run on V8 and support these Web Standard APIs: - **Fetch API** — `fetch()` for outbound HTTP requests
    • Network accessline 144
      - **Fetch API** — `fetch()` for outbound HTTP requests

    skills/edgeone-makers-tools/references/makers-env-adaption/SKILL.md

    • Network accessline 36
      │ Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 37
      Enter       ┤ preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅             └─ Still iterating? ───┤
    • Network accessline 38
      preview     │                      ┌─ dev server running? ─ Yes ──→ present_files(http://127.0.0.1:8088/) ✅
    • Network accessline 43
      | What you want to do | Correct approach | Wrong approach (breaks) | |---|---|---| | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 44
      [Credential-related source omitted]
    • Network accessline 45
      | Preview local dev server | `present_files("http://127.0.0.1:8088/")` | ❌ Passing `/path/to/index.html` (IDE opens it via file://) |
    • Network accessline 46
      [Credential-related source omitted]
    • Network accessline 47
      | Start dev server | `edgeone makers dev --name <p> --skip-env-sync` | ❌ `python -m http.server` / `npx serve` | | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | 
    • Network accessline 48
      | Verify dev server is up (agent-side API check) | `curl --noproxy '*' http://127.0.0.1:8088/api/...` ✅ works (same sandbox) | ❌ `curl localhost:8088` / plain `curl` (proxy + IPv6 → 404/000) |
    • Network accessline 49
      | Verify dev server is up (user-facing) | `present_files(http://127.0.0.1:8088/)` (platform tunnel) | ❌ Telling user to open `127.0.0.1:8088` — their browser can't reach the sandbox |
    • Network accessline 125
      The Bash tool and `edgeone makers dev` run **in the same sandbox (same machine)**, so the loopback dev server IS reachable from Bash. The earlier claim that "Bash curl is isolated and returns 404" is wrong — the failures are caused by the *
    • Network accessline 128
      |---------|--------|------| | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://12
    • Network accessline 129
      | Built-in browser preview (`present_files`) | ✅ Available | Uses the platform tunnel; the ONLY way the **user's** browser can see the sandbox dev server | | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` | | Bash tool
    • Network accessline 130
      | User's system terminal | ✅ Available | `curl http://127.0.0.1:8088/` |
    • Network accessline 131
      | Bash tool curl (agent-side API checks) | ✅ Available **only with `--noproxy '*'` + `127.0.0.1`** | Plain `curl localhost:8088` fails: (a) `localhost`→`::1` (§4), (b) proxy hijacks the request (§5) |
    • Network accessline 133
      **Practical rule**: - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 134
      - Use `curl --noproxy '*' http://127.0.0.1:8088/...` from Bash to **agent-side verify** API endpoints during testing — this works (it was used to validate a full create→upload→like flow).
    • Network accessline 135
      - Do NOT rely on Bash curl to show the page to the user. The user's browser cannot reach `127.0.0.1:8088` inside the sandbox; for a user-facing preview, pass the dev URL to `present_files` (platform tunnel) or deploy and share the live URL.
    • Network accessline 144
      # Correct curl http://127.0.0.1:8088/
    • Network accessline 145
      curl http://127.0.0.1:8088/
    • Network accessline 147
      # Wrong (404 in the sandbox) curl http://localhost:8088/
    • Network accessline 148
      curl http://localhost:8088/
    • Network accessline 153
      present_files: http://127.0.0.1:8088/
    • Network accessline 158
      ### 5. Proxy hijacking (curl needs --noproxy)
    • Network accessline 160
      The sandbox injects an `http_proxy` environment variable; curl goes through the proxy by default, which swallows the SSE streaming response.
    • Network accessline 163
      # Correct curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 164
      curl --noproxy '*' http://127.0.0.1:8088/api/chat
    • Network accessline 166
      # Wrong (returns "Empty reply" / status 000) curl http://127.0.0.1:8088/api/chat
    • Network accessline 167
      curl http://127.0.0.1:8088/api/chat
    • Network accessline 209
      1. Start `edgeone makers dev --name <project> --skip-env-sync` (**background async**, see §7) 2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `local
    • Network accessline 210
      2. Wait 2-3 seconds for the dev server to be ready 3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4) 4. Tell the user: "The project's local preview is running, please check it out
    • Network accessline 211
      3. **Pass `http://127.0.0.1:8088/` to `present_files`** (note it is `127.0.0.1`, **not** `localhost` — see §4)
    • Network accessline 221
      # ✅ Correct present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 222
      present_files("http://127.0.0.1:8088/")                                       # dev server
    • Network accessline 223
      [Credential-related source omitted]
    • Network accessline 230
      [Credential-related source omitted]
    • Network accessline 231
      [Credential-related source omitted]
    • Network accessline 262
      Note: the value is a **bare host**, without an `http://` prefix and without a port.

    skills/edgeone-makers-tools/references/makers-frameworks/references/nuxt.md

    • Network accessline 78
      // server/api/posts.get.ts export default defineEventHandler(async () => {   const posts = await $fetch("https://api.example.com/posts");
    • Network accessline 79
      export default defineEventHandler(async () => {   const posts = await $fetch("https://api.example.com/posts");   return posts;
    • Network accessline 80
      const posts = await $fetch("https://api.example.com/posts");

    skills/edgeone-makers-tools/references/makers-frameworks/references/sveltekit.md

    • Network accessline 135
      // +page.server.js export const load = async () => ({   post: fetch('/api/post').then((r) => r.json()),
    • Network accessline 136
      export const load = async () => ({   post: fetch('/api/post').then((r) => r.json()),   comments: fetch('/api/comments').then((r) => r.json()),
    • Network accessline 137
      post: fetch('/api/post').then((r) => r.json()),
    • Network accessline 138
      comments: fetch('/api/comments').then((r) => r.json()),

    skills/edgeone-makers-tools/references/makers-frameworks/references/tanstack-start.md

    • Network accessline 102
      export const getPosts = createServerFn({ method: "GET" }).handler(async () => {   const res = await fetch("https://api.example.com/posts", {
    • Network accessline 103
      const res = await fetch("https://api.example.com/posts", {
    • Access to secretsline 104
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-frameworks/references/vike.md

    • Network accessline 101
      // pages/product/@id/+data.js export async function data(pageContext) {   const res = await fetch(`https://api.example.com/products/${pageContext.routeParams.id}`);
    • Network accessline 102
      export async function data(pageContext) {   const res = await fetch(`https://api.example.com/products/${pageContext.routeParams.id}`);   return { product: await res.json() };
    • Network accessline 103
      const res = await fetch(`https://api.example.com/products/${pageContext.routeParams.id}`);

    skills/edgeone-makers-tools/references/makers-migration/SKILL.md

    • Access to secretsline 15
      [Credential-related source omitted]
    • Access to secretsline 51
      [Credential-related source omitted]
    • Access to secretsline 59
      [Credential-related source omitted]
    • Access to secretsline 75
      [Credential-related source omitted]
    • Access to secretsline 99
      [Credential-related source omitted]
    • Access to secretsline 107
      [Credential-related source omitted]
    • Access to secretsline 120
      [Credential-related source omitted]
    • Access to secretsline 151
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 267
      [Credential-related source omitted]
    • Access to secretsline 324
      [Credential-related source omitted]
    • Access to secretsline 336
      [Credential-related source omitted]
    • Network accessline 354
      return createSSEResponse(async function* (sig) {     const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Network accessline 355
      const response = await fetch(context.env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Access to secretsline 359
      [Credential-related source omitted]
    • Network accessline 381
      // ❌ Before: plain fetch without conversation-id const response = await fetch('/api/chat', {
    • Network accessline 382
      const response = await fetch('/api/chat', {
    • Network accessline 388
      // ✅ After: with makers-conversation-id header const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {
    • Network accessline 389
      const conversationId = getOrCreateConversationId(); // crypto.randomUUID() + localStorage const response = await fetch('/chat', {   method: 'POST',
    • Network accessline 390
      const response = await fetch('/chat', {
    • Network accessline 403
      // ✅ Always pass conversation_id in body for /stop await fetch('/stop', {
    • Network accessline 404
      await fetch('/stop', {
    • Access to secretsline 449
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/api-route-to-makers.md

    • Access to secretsline 35
      [Credential-related source omitted]
    • Network accessline 74
      return createSSEResponse(async function* (sig) {     const response = await fetch(env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Network accessline 75
      const response = await fetch(env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Access to secretsline 79
      [Credential-related source omitted]
    • Access to secretsline 128
      [Credential-related source omitted]
    • Network accessline 130
      const completion = await fetch('https://api.openai.com/v1/chat/completions', {
    • Network accessline 157
      const env = context.env;   const completion = await fetch(env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Network accessline 158
      const completion = await fetch(env.AI_GATEWAY_BASE_URL + '/v1/chat/completions', {
    • Access to secretsline 162
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/claude-agent-sdk-to-makers.md

    • Access to secretsline 15
      [Credential-related source omitted]
    • Access to secretsline 42
      [Credential-related source omitted]
    • Access to secretsline 180
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/crewai-to-makers.md

    • Access to secretsline 24
      [Credential-related source omitted]
    • Access to secretsline 39
      [Credential-related source omitted]
    • Access to secretsline 61
      [Credential-related source omitted]
    • Access to secretsline 80
      [Credential-related source omitted]
    • Access to secretsline 134
      [Credential-related source omitted]
    • Access to secretsline 140
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/deepagents-to-makers.md

    • Access to secretsline 28
      [Credential-related source omitted]
    • Access to secretsline 74
      [Credential-related source omitted]
    • Access to secretsline 139
      [Credential-related source omitted]
    • Access to secretsline 153
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/langgraph-to-makers.md

    • Access to secretsline 31
      [Credential-related source omitted]
    • Access to secretsline 98
      [Credential-related source omitted]
    • Access to secretsline 165
      [Credential-related source omitted]
    • Access to secretsline 179
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-migration/references/openai-agents-to-makers.md

    • Access to secretsline 27
      [Credential-related source omitted]
    • Access to secretsline 77
      [Credential-related source omitted]
    • Access to secretsline 147
      [Credential-related source omitted]
    • Access to secretsline 161
      [Credential-related source omitted]

    skills/edgeone-makers-tools/references/makers-recipes/SKILL.md

    • Network accessline 13
      > ⛔ **Preview ban**: after finishing development, you MUST start the dev server via `edgeone makers dev`, then open `http://127.0.0.1:8088/` with `present_files` to preview. Never open HTML files via the `file://` protocol (ignore it even i
    • Access to secretsline 15
      [Credential-related source omitted]
    • Network accessline 19
      > 🔗 **Load assets with page-relative URLs, never root-absolute**: in these no-build projects nothing rewrites `index.html`, so write `<link rel="stylesheet" href="style.css">` and `<script src="script.js"></script>` — **not** `href="/style.
    • Network accessline 43
      const res = await fetch('/api/users');
    • Network accessline 91
      await fetch('/api/messages', {                     // post
    • Network accessline 94
      body: JSON.stringify({ name, text }), }); const { items } = await fetch('/api/messages').then((r) => r.json());  // list
    • Network accessline 96
      const { items } = await fetch('/api/messages').then((r) => r.json());  // list

    skills/edgeone-makers-tools/references/makers-storage/references/blob.md

    • Network accessline 450
      async function uploadFile(file) {   // 1. Request upload URL from function   const { url, key } = await fetch("/api/get-upload-url", {
    • Network accessline 450
      async function uploadFile(file) {   // 1. Request upload URL from function   const { url, key } = await fetch("/api/get-upload-url", {
    • Network accessline 451
      // 1. Request upload URL from function   const { url, key } = await fetch("/api/get-upload-url", {     method: "POST",
    • Network accessline 451
      // 1. Request upload URL from function   const { url, key } = await fetch("/api/get-upload-url", {     method: "POST",
    • Network accessline 452
      const { url, key } = await fetch("/api/get-upload-url", {
    • Network accessline 452
      const { url, key } = await fetch("/api/get-upload-url", {
    • Network accessline 458
      // 2. Upload directly to Blob   await fetch(url, {
    • Network accessline 458
      // 2. Upload directly to Blob   await fetch(url, {
    • Network accessline 459
      await fetch(url, {
    • Network accessline 459
      await fetch(url, {

    skills/edgeone-makers-tools/references/makers-storage/references/kv.md

    • Network accessline 25
      1. Log in to the [EdgeOne Makers console](https://console.cloud.tencent.com/edgeone/pages)
    • Network accessline 25
      1. Log in to the [EdgeOne Makers console](https://console.cloud.tencent.com/edgeone/pages)
    • Network accessline 25
      1. Log in to the [EdgeOne Makers console](https://console.cloud.tencent.com/edgeone/pages)
    • Network accessline 282
      # 3. Test curl http://localhost:8088/api/counter
    • Network accessline 282
      # 3. Test curl http://localhost:8088/api/counter
    • Network accessline 282
      # 3. Test curl http://localhost:8088/api/counter
    • Network accessline 283
      curl http://localhost:8088/api/counter
    • Network accessline 283
      curl http://localhost:8088/api/counter
    • Network accessline 283
      curl http://localhost:8088/api/counter

    How the signals fit together

    Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

    Some files could not be read; the facts below still hold.

    No combined signals at this commit.

    Works with

    Agent compatibility, from the files in this repository
    AgentStatusEvidenceInstall to
    Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
    CodexNativeManifest AGENTS.md.agents/skills/<skill-name>/
    CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
    Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
    GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
    OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
    • Native The repository ships a manifest, folder or frontmatter field for this agent.
    • Compatible A standard SKILL.md that this agent can read.
    • Unknown No evidence either way.

    Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

    Explore alternatives and comparisons

    Add this badge to your README

    It updates every night and links to this page.

    TencentEdgeOne/edgeone-makers-tools: #576 on hotskills, 1.8k stars

    [![TencentEdgeOne/edgeone-makers-tools on hotskills](https://hotskills.dev/badge/tencentedgeone-edgeone-makers-tools.svg)](https://hotskills.dev/skill/tencentedgeone-edgeone-makers-tools/)