├── .claude ├── .agents │ └── code-reviewer.md ├── agents │ └── code-reviewer.md ├── mcp-descriptions │ └── git-mcp.mdc └── settings.local.json ├── .env.example ├── .github ├── FUNDING.yml └── workflows │ └── ci.yml ├── .gitignore ├── .husky └── pre-push ├── .mcp.json ├── .prettierrc.json ├── CLAUDE.md ├── Dockerfile ├── LICENSE ├── README.md ├── bun.lock ├── bun.lockb ├── compose.dev.yaml ├── compose.yaml ├── eslint.config.mjs ├── package.json ├── prometheus.yml ├── rules ├── accountAge.ts ├── accountThreshold.ts ├── constants.ts ├── handles.ts ├── posts.ts └── profiles.ts ├── src ├── accountModeration.ts ├── accountThreshold.ts ├── agent.ts ├── config.ts ├── limits.ts ├── logger.ts ├── main.ts ├── metrics.ts ├── moderation.ts ├── redis.ts ├── rules │ ├── account │ │ ├── age.ts │ │ ├── countStarterPacks.ts │ │ └── tests │ │ │ ├── age.test.ts │ │ │ └── countStarterPacks.test.ts │ ├── facets │ │ ├── facets.ts │ │ └── tests │ │ │ └── facets.test.ts │ ├── handles │ │ ├── checkHandles.test.ts │ │ └── checkHandles.ts │ ├── posts │ │ ├── checkPosts.ts │ │ └── tests │ │ │ └── checkPosts.test.ts │ └── profiles │ │ ├── checkProfiles.ts │ │ └── tests │ │ └── checkProfiles.test.ts ├── session.ts ├── tests │ ├── accountThreshold.test.ts │ ├── agent.test.ts │ ├── limits.test.ts │ ├── metrics.test.ts │ ├── moderation.test.ts │ ├── redis.test.ts │ └── session.test.ts ├── types.ts └── utils │ ├── getFinalUrl.test.ts │ ├── getFinalUrl.ts │ ├── getLanguage.test.ts │ ├── getLanguage.ts │ ├── homoglyph.test.ts │ ├── homoglyphs.ts │ ├── normalizeUnicode.test.ts │ └── normalizeUnicode.ts ├── tsconfig.json └── vitest.config.ts /.claude/.agents/code-reviewer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.claude/.agents/code-reviewer.md -------------------------------------------------------------------------------- /.claude/agents/code-reviewer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.claude/agents/code-reviewer.md -------------------------------------------------------------------------------- /.claude/mcp-descriptions/git-mcp.mdc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.claude/mcp-descriptions/git-mcp.mdc -------------------------------------------------------------------------------- /.claude/settings.local.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.claude/settings.local.json -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.env.example -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/pre-push: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.husky/pre-push -------------------------------------------------------------------------------- /.mcp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.mcp.json -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/README.md -------------------------------------------------------------------------------- /bun.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/bun.lock -------------------------------------------------------------------------------- /bun.lockb: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /compose.dev.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/compose.dev.yaml -------------------------------------------------------------------------------- /compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/compose.yaml -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/eslint.config.mjs -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/package.json -------------------------------------------------------------------------------- /prometheus.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/prometheus.yml -------------------------------------------------------------------------------- /rules/accountAge.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/accountAge.ts -------------------------------------------------------------------------------- /rules/accountThreshold.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/accountThreshold.ts -------------------------------------------------------------------------------- /rules/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/constants.ts -------------------------------------------------------------------------------- /rules/handles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/handles.ts -------------------------------------------------------------------------------- /rules/posts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/posts.ts -------------------------------------------------------------------------------- /rules/profiles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/rules/profiles.ts -------------------------------------------------------------------------------- /src/accountModeration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/accountModeration.ts -------------------------------------------------------------------------------- /src/accountThreshold.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/accountThreshold.ts -------------------------------------------------------------------------------- /src/agent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/agent.ts -------------------------------------------------------------------------------- /src/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/config.ts -------------------------------------------------------------------------------- /src/limits.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/limits.ts -------------------------------------------------------------------------------- /src/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/logger.ts -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/main.ts -------------------------------------------------------------------------------- /src/metrics.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/metrics.ts -------------------------------------------------------------------------------- /src/moderation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/moderation.ts -------------------------------------------------------------------------------- /src/redis.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/redis.ts -------------------------------------------------------------------------------- /src/rules/account/age.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/account/age.ts -------------------------------------------------------------------------------- /src/rules/account/countStarterPacks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/account/countStarterPacks.ts -------------------------------------------------------------------------------- /src/rules/account/tests/age.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/account/tests/age.test.ts -------------------------------------------------------------------------------- /src/rules/account/tests/countStarterPacks.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/account/tests/countStarterPacks.test.ts -------------------------------------------------------------------------------- /src/rules/facets/facets.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/facets/facets.ts -------------------------------------------------------------------------------- /src/rules/facets/tests/facets.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/facets/tests/facets.test.ts -------------------------------------------------------------------------------- /src/rules/handles/checkHandles.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/handles/checkHandles.test.ts -------------------------------------------------------------------------------- /src/rules/handles/checkHandles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/handles/checkHandles.ts -------------------------------------------------------------------------------- /src/rules/posts/checkPosts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/posts/checkPosts.ts -------------------------------------------------------------------------------- /src/rules/posts/tests/checkPosts.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/posts/tests/checkPosts.test.ts -------------------------------------------------------------------------------- /src/rules/profiles/checkProfiles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/profiles/checkProfiles.ts -------------------------------------------------------------------------------- /src/rules/profiles/tests/checkProfiles.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/rules/profiles/tests/checkProfiles.test.ts -------------------------------------------------------------------------------- /src/session.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/session.ts -------------------------------------------------------------------------------- /src/tests/accountThreshold.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/accountThreshold.test.ts -------------------------------------------------------------------------------- /src/tests/agent.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/agent.test.ts -------------------------------------------------------------------------------- /src/tests/limits.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/limits.test.ts -------------------------------------------------------------------------------- /src/tests/metrics.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/metrics.test.ts -------------------------------------------------------------------------------- /src/tests/moderation.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/moderation.test.ts -------------------------------------------------------------------------------- /src/tests/redis.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/redis.test.ts -------------------------------------------------------------------------------- /src/tests/session.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/tests/session.test.ts -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/types.ts -------------------------------------------------------------------------------- /src/utils/getFinalUrl.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/getFinalUrl.test.ts -------------------------------------------------------------------------------- /src/utils/getFinalUrl.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/getFinalUrl.ts -------------------------------------------------------------------------------- /src/utils/getLanguage.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/getLanguage.test.ts -------------------------------------------------------------------------------- /src/utils/getLanguage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/getLanguage.ts -------------------------------------------------------------------------------- /src/utils/homoglyph.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/homoglyph.test.ts -------------------------------------------------------------------------------- /src/utils/homoglyphs.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/homoglyphs.ts -------------------------------------------------------------------------------- /src/utils/normalizeUnicode.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/normalizeUnicode.test.ts -------------------------------------------------------------------------------- /src/utils/normalizeUnicode.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/src/utils/normalizeUnicode.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vitest.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skywatch-bsky/skywatch-automod/HEAD/vitest.config.ts --------------------------------------------------------------------------------