📦 deps(thirdparty): update snapshots
This commit is contained in:
@@ -92,7 +92,7 @@ export function generateSitemapXml({ baseUrl, paths, lastmod = DEFAULT_LASTMOD }
|
||||
})
|
||||
.join('\n');
|
||||
|
||||
return `<?xml version="1.0" encoding="UTF-8"?>\n<urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9">\n${urlsXml}\n</urlset>\n`;
|
||||
return `<?xml version="1.0" encoding="UTF-8"?>\n<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">\n${urlsXml}\n</urlset>\n`;
|
||||
}
|
||||
|
||||
function readSkillsCatalog() {
|
||||
|
||||
@@ -9,14 +9,16 @@ const PUBLIC_DIR = path.join(ROOT_DIR, 'public');
|
||||
const TEMPLATE_PATH = path.join(DIST_DIR, 'index.html');
|
||||
const SKILLS_PATH = path.join(PUBLIC_DIR, 'skills.json');
|
||||
|
||||
const HOME_CATALOG_COUNT_FALLBACK = 1494;
|
||||
const HOME_CATALOG_COUNT_FALLBACK = 1508;
|
||||
const PRERENDER_SOCIAL_IMAGE = 'social-card.svg';
|
||||
const SITE_NAME = 'Antigravity Awesome Skills';
|
||||
const REPOSITORY_URL = 'https://github.com/sickn33/antigravity-awesome-skills';
|
||||
const HOSTED_CATALOG_URL = 'https://sickn33.github.io/antigravity-awesome-skills/';
|
||||
const FAQ_ITEMS = [
|
||||
{
|
||||
question: 'What is Antigravity Awesome Skills?',
|
||||
answer:
|
||||
'Antigravity Awesome Skills is an installable GitHub library of 1,494+ reusable SKILL.md playbooks for AI coding assistants. It supports Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and related hosts through direct skill installs, specialized plugins, bundles, workflows, and a searchable catalog.',
|
||||
'Antigravity Awesome Skills is an installable GitHub library of 1,508+ reusable SKILL.md playbooks for AI coding assistants. It supports Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and related hosts through direct skill installs, specialized plugins, bundles, workflows, and a searchable catalog.',
|
||||
},
|
||||
{
|
||||
question: 'How do I install Antigravity Awesome Skills?',
|
||||
@@ -181,6 +183,38 @@ function buildHomeMeta({ catalogCount, imageUrl, canonicalUrl }) {
|
||||
const title = `Antigravity Awesome Skills | ${formattedCount}+ AI coding skills and plugins`;
|
||||
const description = `Explore ${formattedCount}+ installable agentic skills, specialized plugins, bundles, and workflows for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and other AI coding assistants.`;
|
||||
const catalogBaseUrl = canonicalUrl.replace(/\/$/, '');
|
||||
const sourceCodeEntity = {
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'SoftwareSourceCode',
|
||||
name: SITE_NAME,
|
||||
description: `Installable GitHub library of ${formattedCount}+ agentic skills, specialized plugins, bundles, and workflows for AI coding assistants.`,
|
||||
url: REPOSITORY_URL,
|
||||
sameAs: [
|
||||
canonicalUrl,
|
||||
HOSTED_CATALOG_URL,
|
||||
'https://www.npmjs.com/package/antigravity-awesome-skills',
|
||||
],
|
||||
mainEntityOfPage: canonicalUrl,
|
||||
codeRepository: REPOSITORY_URL,
|
||||
applicationCategory: 'DeveloperApplication',
|
||||
keywords: [
|
||||
'AI coding assistant skills',
|
||||
'Claude Code skills',
|
||||
'Codex CLI skills',
|
||||
'Cursor skills',
|
||||
'Gemini CLI skills',
|
||||
'Antigravity skills',
|
||||
'specialized plugins',
|
||||
'SKILL.md',
|
||||
],
|
||||
isAccessibleForFree: true,
|
||||
programmingLanguage: {
|
||||
'@type': 'ComputerLanguage',
|
||||
name: 'Markdown',
|
||||
url: 'https://en.wikipedia.org/wiki/Markdown',
|
||||
},
|
||||
license: `${REPOSITORY_URL}/blob/main/LICENSE`,
|
||||
};
|
||||
|
||||
return {
|
||||
title,
|
||||
@@ -197,6 +231,8 @@ function buildHomeMeta({ catalogCount, imageUrl, canonicalUrl }) {
|
||||
name: SITE_NAME,
|
||||
description,
|
||||
url: canonicalUrl,
|
||||
sameAs: REPOSITORY_URL,
|
||||
about: sourceCodeEntity,
|
||||
isPartOf: {
|
||||
'@type': 'WebSite',
|
||||
name: SITE_NAME,
|
||||
@@ -210,12 +246,13 @@ function buildHomeMeta({ catalogCount, imageUrl, canonicalUrl }) {
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'Organization',
|
||||
'@id': `${REPOSITORY_URL}#organization`,
|
||||
name: SITE_NAME,
|
||||
url: 'https://github.com/sickn33/antigravity-awesome-skills',
|
||||
url: REPOSITORY_URL,
|
||||
sameAs: [
|
||||
'https://x.com/AASkills_',
|
||||
'https://www.npmjs.com/package/antigravity-awesome-skills',
|
||||
'https://sickn33.github.io/antigravity-awesome-skills/',
|
||||
HOSTED_CATALOG_URL,
|
||||
],
|
||||
},
|
||||
{
|
||||
@@ -223,6 +260,7 @@ function buildHomeMeta({ catalogCount, imageUrl, canonicalUrl }) {
|
||||
'@type': 'WebSite',
|
||||
name: SITE_NAME,
|
||||
url: catalogBaseUrl,
|
||||
sameAs: REPOSITORY_URL,
|
||||
inLanguage: 'en',
|
||||
potentialAction: {
|
||||
'@type': 'SearchAction',
|
||||
@@ -230,32 +268,7 @@ function buildHomeMeta({ catalogCount, imageUrl, canonicalUrl }) {
|
||||
'query-input': 'required name=search_term_string',
|
||||
},
|
||||
},
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'SoftwareSourceCode',
|
||||
name: SITE_NAME,
|
||||
description: `Installable GitHub library of ${formattedCount}+ agentic skills, specialized plugins, bundles, and workflows for AI coding assistants.`,
|
||||
url: canonicalUrl,
|
||||
codeRepository: 'https://github.com/sickn33/antigravity-awesome-skills',
|
||||
applicationCategory: 'DeveloperApplication',
|
||||
keywords: [
|
||||
'AI coding assistant skills',
|
||||
'Claude Code skills',
|
||||
'Codex CLI skills',
|
||||
'Cursor skills',
|
||||
'Gemini CLI skills',
|
||||
'Antigravity skills',
|
||||
'specialized plugins',
|
||||
'SKILL.md',
|
||||
],
|
||||
isAccessibleForFree: true,
|
||||
programmingLanguage: {
|
||||
'@type': 'ComputerLanguage',
|
||||
name: 'Markdown',
|
||||
url: 'https://en.wikipedia.org/wiki/Markdown',
|
||||
},
|
||||
license: 'https://github.com/sickn33/antigravity-awesome-skills/blob/main/LICENSE',
|
||||
},
|
||||
sourceCodeEntity,
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'FAQPage',
|
||||
@@ -344,6 +357,7 @@ function buildPluginsMeta({ pluginCount, imageUrl, canonicalUrl }) {
|
||||
'@type': 'WebSite',
|
||||
name: SITE_NAME,
|
||||
url: canonicalUrl.replace(/\/plugins\/?$/, ''),
|
||||
sameAs: REPOSITORY_URL,
|
||||
},
|
||||
mainEntity: {
|
||||
'@type': 'ItemList',
|
||||
@@ -354,8 +368,9 @@ function buildPluginsMeta({ pluginCount, imageUrl, canonicalUrl }) {
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'Organization',
|
||||
'@id': `${REPOSITORY_URL}#organization`,
|
||||
name: SITE_NAME,
|
||||
url: 'https://github.com/sickn33/antigravity-awesome-skills',
|
||||
url: REPOSITORY_URL,
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
@@ -237,6 +237,23 @@ function assertJsonLdTypes(htmlText, requiredTypes) {
|
||||
}
|
||||
}
|
||||
|
||||
function assertRepositoryJsonLdSignals(htmlText) {
|
||||
const entries = extractJsonLdEntries(htmlText);
|
||||
const repoUrl = 'https://github.com/sickn33/antigravity-awesome-skills';
|
||||
const sourceCode = entries.find((entry) => entry?.['@type'] === 'SoftwareSourceCode');
|
||||
const organization = entries.find((entry) => entry?.['@type'] === 'Organization');
|
||||
const collectionPage = entries.find((entry) => entry?.['@type'] === 'CollectionPage');
|
||||
|
||||
assert(sourceCode?.url === repoUrl, 'SoftwareSourceCode JSON-LD must use the GitHub repository as its URL.');
|
||||
assert(sourceCode?.codeRepository === repoUrl, 'SoftwareSourceCode JSON-LD must expose the GitHub repository.');
|
||||
assert(
|
||||
typeof sourceCode?.mainEntityOfPage === 'string' && sourceCode.mainEntityOfPage.length > 0,
|
||||
'SoftwareSourceCode JSON-LD must link back to the hosted catalog page with mainEntityOfPage.',
|
||||
);
|
||||
assert(organization?.url === repoUrl, 'Organization JSON-LD must use the GitHub repository as its URL.');
|
||||
assert(collectionPage?.sameAs === repoUrl, 'CollectionPage JSON-LD must link the hosted catalog to the GitHub repository.');
|
||||
}
|
||||
|
||||
export function assertIndexSocialMeta(htmlText) {
|
||||
assertMetaContent(htmlText, 'property', 'og:image');
|
||||
assertMetaContent(htmlText, 'name', 'twitter:image');
|
||||
@@ -259,10 +276,11 @@ export function assertIndexDiscoveryMeta(htmlText) {
|
||||
twitterDescription,
|
||||
].join(' ');
|
||||
|
||||
assert(combined.includes('1,494+'), 'Home SEO metadata must expose the current 1,494+ skill count.');
|
||||
assert(combined.includes('1,508+'), 'Home SEO metadata must expose the current 1,508+ skill count.');
|
||||
assert(combined.includes('specialized plugins'), 'Home SEO metadata must mention specialized plugins.');
|
||||
assert(!combined.includes('prompt templates'), 'Home SEO metadata must not use stale prompt-template positioning.');
|
||||
assertJsonLdTypes(htmlText, ['CollectionPage', 'Organization', 'WebSite', 'SoftwareSourceCode', 'FAQPage']);
|
||||
assertRepositoryJsonLdSignals(htmlText);
|
||||
}
|
||||
|
||||
export function assertPluginsDiscoveryMeta(htmlText) {
|
||||
@@ -326,11 +344,12 @@ export function assertLlms(llmsText) {
|
||||
const text = String(llmsText ?? '');
|
||||
const requiredSnippets = [
|
||||
'# Antigravity Awesome Skills',
|
||||
'1,494+',
|
||||
'1,508+',
|
||||
'specialized plugins',
|
||||
'Claude Code',
|
||||
'Codex CLI',
|
||||
'https://github.com/sickn33/antigravity-awesome-skills',
|
||||
'Canonical source of truth',
|
||||
];
|
||||
|
||||
for (const snippet of requiredSnippets) {
|
||||
|
||||
@@ -78,8 +78,9 @@ describe('seo assets verification helpers', () => {
|
||||
it('requires llms.txt discovery signals', () => {
|
||||
const llms = `
|
||||
# Antigravity Awesome Skills
|
||||
1,494+ agentic skills with specialized plugins for Claude Code and Codex CLI.
|
||||
1,508+ agentic skills with specialized plugins for Claude Code and Codex CLI.
|
||||
https://github.com/sickn33/antigravity-awesome-skills
|
||||
Canonical source of truth: the GitHub repository is the primary project URL.
|
||||
`;
|
||||
|
||||
expect(() => assertLlms(llms)).not.toThrow();
|
||||
@@ -103,18 +104,18 @@ describe('seo assets verification helpers', () => {
|
||||
const html = `
|
||||
<html>
|
||||
<head>
|
||||
<title>Antigravity Awesome Skills | 1,494+ AI coding skills and plugins</title>
|
||||
<meta name="description" content="Explore 1,494+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<meta property="og:title" content="Antigravity Awesome Skills | 1,494+ AI coding skills and plugins" />
|
||||
<meta property="og:description" content="Explore 1,494+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<meta name="twitter:title" content="Antigravity Awesome Skills | 1,494+ AI coding skills and plugins" />
|
||||
<meta name="twitter:description" content="Explore 1,494+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<title>Antigravity Awesome Skills | 1,508+ AI coding skills and plugins</title>
|
||||
<meta name="description" content="Explore 1,508+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<meta property="og:title" content="Antigravity Awesome Skills | 1,508+ AI coding skills and plugins" />
|
||||
<meta property="og:description" content="Explore 1,508+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<meta name="twitter:title" content="Antigravity Awesome Skills | 1,508+ AI coding skills and plugins" />
|
||||
<meta name="twitter:description" content="Explore 1,508+ installable agentic skills, specialized plugins, bundles, and workflows." />
|
||||
<script type="application/ld+json">
|
||||
[
|
||||
{"@context":"https://schema.org","@type":"CollectionPage"},
|
||||
{"@context":"https://schema.org","@type":"Organization"},
|
||||
{"@context":"https://schema.org","@type":"CollectionPage","sameAs":"https://github.com/sickn33/antigravity-awesome-skills"},
|
||||
{"@context":"https://schema.org","@type":"Organization","url":"https://github.com/sickn33/antigravity-awesome-skills"},
|
||||
{"@context":"https://schema.org","@type":"WebSite"},
|
||||
{"@context":"https://schema.org","@type":"SoftwareSourceCode"},
|
||||
{"@context":"https://schema.org","@type":"SoftwareSourceCode","url":"https://github.com/sickn33/antigravity-awesome-skills","codeRepository":"https://github.com/sickn33/antigravity-awesome-skills","mainEntityOfPage":"https://owner.github.io/repo/"},
|
||||
{"@context":"https://schema.org","@type":"FAQPage"}
|
||||
]
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user