一键导入
landscape-add
Add a new project to the AI Native Landscape from a GitHub URL or GitHub issue requesting inclusion.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Add a new project to the AI Native Landscape from a GitHub URL or GitHub issue requesting inclusion.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Archive or deprecate a project in the AI Native Landscape. Set status to archived or inactive, record reason and date.
Bulk import multiple projects to the AI Native Landscape from a JSON file, CSV file, or list of GitHub URLs.
Batch health check all tracked projects — detect inactive repos, stale data, archived GitHub repos, and auto-suggest status changes.
Generate statistics and analytics reports for the AI Native Landscape — category counts, license distribution, activity trends, and growth metrics.
Search the AI Native Landscape for open-source AI projects by natural language description. Find tools, frameworks, agents, runtimes, and infrastructure for AI native systems.
Full sync all landscape projects from GitHub — batch update metadata, detect status changes, and keep the entire catalog fresh.
| name | landscape-add |
| description | Add a new project to the AI Native Landscape from a GitHub URL or GitHub issue requesting inclusion. |
Add a new open-source project to the landscape catalog. Accepts either a GitHub repository URL or a GitHub issue that requests project inclusion.
From GitHub URL:
owner/repogh repo view <owner/repo> --json name,description,homepageUrl,licenseInfo,stargazerCount,createdAt,repositoryTopics,ownerFrom GitHub Issue:
gh issue view <number> --json title,body,commentsYou MUST determine the correct category and subCategory by examining the project's topics, description, README, and tags. Reference the full taxonomy:
Read the taxonomy file first:
cat data/categories.yaml
Categories and their subcategories:
| Category | Subcategories |
|---|---|
agents | agent-frameworks, agent-orchestration |
rag-knowledge | agent-memory-context, vector-databases, retrieval-indexing, document-processing, knowledge-graphs, data-connectors |
models-modalities | foundation-models, model-toolkits, multimodal, audio-speech, image-video-generation |
inference-serving | model-serving, inference-runtimes, sandboxes-runtimes, gpu-acceleration, edge-local-inference, llm-routing-gateways |
training-optimization | training-frameworks, finetuning-alignment, experiment-mlops, evaluation-benchmarks, observability-monitoring, prompt-quality, safety-guardrails, optimization-simulation |
coding-devtools | mcp-tools, coding-agents, ide-cli-tools, sdk-frameworks, browser-automation, developer-utilities |
applications-products | chat-interfaces, desktop-clients, workflow-automation, low-code-builders, productivity-tools |
platform-infra | cloud-native-ai, data-platforms, security-policy, deployment-operations |
Auto-classification hints — check the project's GitHub topics and README keywords against TAG_PRIORITY_RULES and SUBCATEGORY_RULES in scripts/lib.mjs (lines 12–48 for tag rules, lines 50–219 for subcategory rules). First match wins.
If unsure about classification, check existing projects in similar categories:
ls data/projects/ | grep -i "<keyword>"
The slug must be unique and lowercase with hyphens only (^[a-z0-9-]+$).
# Check for existing slug
ls data/projects/ | grep "^<slug>\."
Derive slug from repo name: lowercase, replace non-alphanumeric with hyphens, collapse consecutive hyphens. If the slug already exists, the project is already listed — report this to the user.
# Check by repo URL
grep -r "github.com/<owner>/<repo>" data/projects/
If found, the project already exists. Report to user.
Create two markdown files in data/projects/ — one per language:
File: data/projects/<slug>.en.md
---
name: <Project Name>
slug: <slug>
homepage: <homepage_url or null>
repo: https://github.com/<owner>/<repo>
license: <SPDX identifier or "Unknown">
category: <category-key>
subCategory: <subcategory-key>
tags:
- <tag1>
- <tag2>
description: <English description, 1-2 sentences>
author: <org or author name>
ossDate: '<ISO date from repo createdAt>'
featured: false
status: tracked
---
## Overview
<2-3 sentences about what the project does>
## Key Features
- <feature 1>
- <feature 2>
- <feature 3>
## Use Cases
- <use case 1>
- <use case 2>
## Technical Details
- <notable technical detail>
File: data/projects/<slug>.zh.md
---
name: <Project Name>
slug: <slug>
homepage: <homepage_url or null>
repo: https://github.com/<owner>/<repo>
license: <SPDX identifier or "Unknown">
category: <category-key>
subCategory: <subcategory-key>
tags:
- <tag1>
- <tag2>
description: <中文描述,1-2 句话>
author: <org or author name>
ossDate: '<ISO date from repo createdAt>'
featured: false
status: tracked
---
## 简介
<2-3 句话介绍项目功能>
## 主要特性
- <特性 1>
- <特性 2>
- <特性 3>
## 使用场景
- <使用场景 1>
- <使用场景 2>
## 技术特点
- <关键技术特点>
Tags: Extract from GitHub topics. Lowercase. Examples: Agent Framework, LLM, MCP, RAG, Vector Database, Inference, Cloud Native.
npm run validate
This runs scripts/validate-data.mjs which checks:
data/schema.project.jsonname, slug, repo, category, description with both zh and en)category + subCategory pairzh and enIf validation fails, fix the reported errors and re-run.
npm run build
Verify the new project appears in the built output:
grep -l "<slug>" dist/data/projects.json 2>/dev/null || grep "<slug>" dist/data/index.json | head -3
After successful addition, report:
name — project display nameslug — unique lowercase hyphenated identifierrepo — GitHub URL (must be github.com)category — valid key from data/categories.yamlsubCategory — valid key belonging to the chosen categorydescription.zh — Chinese description (1-2 sentences)description.en — English description (1-2 sentences)license — SPDX identifier or "Unknown"author — organization or maintainer nameossDate — ISO date from repo creation<slug>.en.md and <slug>.zh.md| Error | Fix |
|---|---|
| Duplicate slug | Project already exists, report to user |
| Duplicate repo URL | Project already exists under different slug |
| Unknown category/subCategory | Check data/categories.yaml for valid keys |
| Validation fails | Read error output, fix fields, re-run npm run validate |
| Build fails | Check error output, usually a data issue |
| Cannot determine category | Ask the user which category fits, provide the list |
When adding multiple projects (e.g., from a list of GitHub URLs):
npm run validatenpm run build