@bluefly/openstandardagents 0.2.7 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.github/AGENTS.md +245 -0
  4. package/.github/agents/github-issue-triage.ossa.yaml +99 -0
  5. package/.github/agents/github-pr-triage.ossa.yaml +137 -0
  6. package/.github/workflows/issue-sync-to-gitlab.yml +138 -0
  7. package/.github/workflows/pr-triage-to-gitlab.yml +164 -0
  8. package/.version.json +2 -2
  9. package/.wiki-config.json +24 -0
  10. package/CHANGELOG.md +44 -18
  11. package/CODEOWNERS +75 -0
  12. package/CONTRIBUTING.md +103 -4
  13. package/README.md +178 -243
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +2 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/repositories/schema.repository.d.ts +6 -1
  19. package/dist/repositories/schema.repository.d.ts.map +1 -1
  20. package/dist/repositories/schema.repository.js +49 -27
  21. package/dist/repositories/schema.repository.js.map +1 -1
  22. package/dist/services/migration.service.d.ts +4 -3
  23. package/dist/services/migration.service.d.ts.map +1 -1
  24. package/dist/services/migration.service.js +11 -10
  25. package/dist/services/migration.service.js.map +1 -1
  26. package/dist/services/release-automation/release.service.js +1 -1
  27. package/dist/services/release-automation/release.service.js.map +1 -1
  28. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  29. package/dist/services/release-automation/webhook.service.js +3 -3
  30. package/dist/services/release-automation/webhook.service.js.map +1 -1
  31. package/dist/services/runtime/claude/claude-adapter.d.ts +1 -1
  32. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -1
  33. package/dist/services/runtime/claude/claude-adapter.js +2 -2
  34. package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
  35. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  36. package/dist/spec/v0.2.8/README.md +72 -0
  37. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  38. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  39. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  40. package/{spec/v0.2.6-dev/ossa-0.2.5.schema.json → dist/spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  41. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  42. package/dist/spec/v0.2.9/a2a-protocol.md +1337 -0
  43. package/dist/spec/v0.2.9/agent.md +1946 -0
  44. package/dist/spec/v0.2.9/capabilities/index.yaml +25 -0
  45. package/dist/spec/v0.2.9/capabilities/memory.yaml +251 -0
  46. package/dist/spec/v0.2.9/capability-schema.md +576 -0
  47. package/dist/spec/v0.2.9/compliance-profiles.md +533 -0
  48. package/dist/spec/v0.2.9/conformance-testing.md +1527 -0
  49. package/dist/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  50. package/dist/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  51. package/dist/spec/v0.2.9/runtime-semantics.md +464 -0
  52. package/dist/spec/v0.2.9/security-model.md +1245 -0
  53. package/dist/spec/v0.2.9/semantic-conventions.md +347 -0
  54. package/dist/spec/v0.2.9/types.ts +522 -0
  55. package/dist/types/index.d.ts +3 -2
  56. package/dist/types/index.d.ts.map +1 -1
  57. package/dist/types/policy.d.ts +377 -0
  58. package/dist/types/policy.d.ts.map +1 -0
  59. package/dist/types/policy.js +84 -0
  60. package/dist/types/policy.js.map +1 -0
  61. package/dist/utils/index.d.ts +6 -0
  62. package/dist/utils/index.d.ts.map +1 -0
  63. package/dist/utils/index.js +6 -0
  64. package/dist/utils/index.js.map +1 -0
  65. package/dist/utils/version.d.ts +68 -0
  66. package/dist/utils/version.d.ts.map +1 -0
  67. package/dist/utils/version.js +156 -0
  68. package/dist/utils/version.js.map +1 -0
  69. package/docs/specs/policy-dsl.md +925 -0
  70. package/eslint-report.json +1 -0
  71. package/examples/adk-integration/code-review-workflow.yml +1 -1
  72. package/examples/adk-integration/customer-support.yml +1 -1
  73. package/examples/adk-integration/data-pipeline.yml +1 -1
  74. package/examples/advanced/reasoning-agent.yaml +136 -0
  75. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  76. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  77. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  78. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  79. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  80. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  81. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  82. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  83. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  84. package/examples/agents-md/code-agent.ossa.json +100 -0
  85. package/examples/agents-md/monorepo-agent.ossa.yaml +180 -0
  86. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  87. package/examples/autogen/multi-agent.ossa.json +1 -1
  88. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  89. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  90. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  91. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  92. package/examples/crewai/research-team.ossa.json +1 -1
  93. package/examples/cursor/code-review-agent.ossa.json +1 -1
  94. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  95. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  96. package/examples/extensions/agents-md-v1.yml +175 -0
  97. package/examples/extensions/drupal-v1.yml +1 -1
  98. package/examples/extensions/kagent-v1.yml +1 -1
  99. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  100. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  101. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  102. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  103. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  104. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  105. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  106. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  107. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  108. package/examples/langchain/chain-agent.ossa.json +1 -1
  109. package/examples/langflow/workflow-agent.ossa.json +1 -1
  110. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  111. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  112. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  113. package/examples/multi-agent/README.md +74 -0
  114. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  115. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  116. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  117. package/examples/openai/basic-agent.ossa.yaml +1 -1
  118. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  119. package/examples/openai/swarm-agent.ossa.json +1 -1
  120. package/examples/production/document-analyzer-openai.yml +1 -1
  121. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  122. package/examples/spec-examples/audit-agent.yml +1 -1
  123. package/examples/spec-examples/chat-agent.yml +1 -1
  124. package/examples/spec-examples/compliance-agent.yml +1 -1
  125. package/examples/spec-examples/monitoring-agent.yml +1 -1
  126. package/examples/spec-examples/workflow-agent.yml +1 -1
  127. package/examples/templates/ossa-compliance.yaml +1 -1
  128. package/examples/vercel/edge-agent.ossa.json +1 -1
  129. package/gl-code-quality-report.json +62 -0
  130. package/llms-ctx-full.txt +39 -0
  131. package/llms-ctx.txt +39 -0
  132. package/llms.txt +47 -0
  133. package/package.json +6 -3
  134. package/scripts/README.md +25 -0
  135. package/scripts/compliance-audit.ts +796 -0
  136. package/scripts/eslint-to-codequality.cjs +34 -0
  137. package/scripts/generate-agents-catalog.ts +2 -1
  138. package/scripts/generate-api-docs.ts +2 -1
  139. package/scripts/generate-examples-docs.ts +2 -1
  140. package/scripts/generate-llms-ctx.sh +17 -0
  141. package/scripts/generate-schema-docs.ts +31 -10
  142. package/scripts/sync-version.js +4 -12
  143. package/scripts/validate-schema.ts +2 -1
  144. package/spec/v0.2.8/CHANGELOG.md +401 -0
  145. package/spec/v0.2.8/README.md +72 -0
  146. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  147. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  148. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  149. package/spec/{v0.2.6-dev/ossa-0.2.6-dev.schema.json → v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  150. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  151. package/spec/v0.2.9/a2a-protocol.md +1337 -0
  152. package/spec/v0.2.9/agent.md +1946 -0
  153. package/spec/v0.2.9/capabilities/index.yaml +25 -0
  154. package/spec/v0.2.9/capabilities/memory.yaml +251 -0
  155. package/spec/v0.2.9/capability-schema.md +576 -0
  156. package/spec/v0.2.9/compliance-profiles.md +533 -0
  157. package/spec/v0.2.9/conformance-testing.md +1527 -0
  158. package/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  159. package/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  160. package/spec/v0.2.9/runtime-semantics.md +464 -0
  161. package/spec/v0.2.9/security-model.md +1245 -0
  162. package/spec/v0.2.9/semantic-conventions.md +347 -0
  163. package/spec/v0.2.9/types.ts +522 -0
  164. package/test-results/junit.xml +337 -0
  165. package/.github/workflows/pr-comment.yml +0 -33
  166. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  167. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +0 -1696
  168. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  169. package/scripts/lib/exec.ts +0 -37
  170. package/scripts/lib/file-ops.ts +0 -58
  171. package/scripts/lib/version.ts +0 -83
  172. package/website/.lighthouserc.ts +0 -24
  173. package/website/.prettierrc +0 -10
  174. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +0 -445
  175. package/website/Dockerfile +0 -30
  176. package/website/app/about/page.tsx +0 -304
  177. package/website/app/blog/[slug]/page.tsx +0 -208
  178. package/website/app/blog/page.tsx +0 -249
  179. package/website/app/design-guide/page.tsx +0 -511
  180. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  181. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  182. package/website/app/ecosystem/page.tsx +0 -410
  183. package/website/app/examples/page.tsx +0 -133
  184. package/website/app/globals.scss +0 -370
  185. package/website/app/layout.tsx +0 -106
  186. package/website/app/license/page.tsx +0 -183
  187. package/website/app/not-found.tsx +0 -18
  188. package/website/app/page.tsx +0 -686
  189. package/website/app/page.tsx.bak +0 -679
  190. package/website/app/page.tsx.bak2 +0 -649
  191. package/website/app/playground/page.tsx +0 -487
  192. package/website/app/robots.ts +0 -19
  193. package/website/app/rss.xml/route.ts +0 -74
  194. package/website/app/schema/page.tsx +0 -1001
  195. package/website/app/sitemap.ts +0 -56
  196. package/website/app/specification/page.tsx +0 -287
  197. package/website/components/InstallCommand.tsx +0 -96
  198. package/website/components/Logo.tsx +0 -97
  199. package/website/components/StructuredData.tsx +0 -65
  200. package/website/components/docs/DocsSearch.tsx +0 -104
  201. package/website/components/docs/DocsSidebar.tsx +0 -155
  202. package/website/components/docs/MarkdownContent.tsx +0 -401
  203. package/website/components/docs/VersionSelector.tsx +0 -105
  204. package/website/components/examples/ExamplesViewer.tsx +0 -293
  205. package/website/components/layout/Footer.tsx +0 -116
  206. package/website/components/layout/Header.tsx +0 -172
  207. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  208. package/website/components/schema/SchemaExplorer.tsx +0 -213
  209. package/website/components/ui/Badge.tsx +0 -82
  210. package/website/components/ui/Button.tsx +0 -116
  211. package/website/components/ui/Card.tsx +0 -167
  212. package/website/components/ui/Checkbox.tsx +0 -141
  213. package/website/components/ui/Input.tsx +0 -169
  214. package/website/components/ui/Radio.tsx +0 -141
  215. package/website/components/ui/Select.tsx +0 -182
  216. package/website/components/ui/Tag.tsx +0 -158
  217. package/website/components/ui/Textarea.tsx +0 -195
  218. package/website/components/ui/index.ts +0 -11
  219. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  220. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  221. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  222. package/website/content/blog/introducing-ossa-framework.md +0 -328
  223. package/website/content/blog/ossa-production-results.md +0 -279
  224. package/website/content/blog/welcome-to-ossa.md +0 -43
  225. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  226. package/website/content/docs/00-home.md +0 -153
  227. package/website/content/docs/adapters/openai-adapter.md +0 -693
  228. package/website/content/docs/agents/catalog.md +0 -28
  229. package/website/content/docs/aiflow-framework-integration-with-ossa.md +0 -107
  230. package/website/content/docs/api-reference/index.md +0 -38
  231. package/website/content/docs/api-reference/ossa-core-api.md +0 -634
  232. package/website/content/docs/api-reference/ossa-registry-api.md +0 -515
  233. package/website/content/docs/api-reference/unified-agent-gateway.md +0 -599
  234. package/website/content/docs/architecture/execution-flow.md +0 -335
  235. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  236. package/website/content/docs/architecture/overview.md +0 -121
  237. package/website/content/docs/architecture/stack-integration.md +0 -461
  238. package/website/content/docs/changelog.md +0 -246
  239. package/website/content/docs/cli-reference/index.md +0 -111
  240. package/website/content/docs/cli-reference/ossa-agents.md +0 -70
  241. package/website/content/docs/cli-reference/ossa-export.md +0 -56
  242. package/website/content/docs/cli-reference/ossa-generate.md +0 -66
  243. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +0 -57
  244. package/website/content/docs/cli-reference/ossa-import.md +0 -56
  245. package/website/content/docs/cli-reference/ossa-init.md +0 -57
  246. package/website/content/docs/cli-reference/ossa-migrate.md +0 -62
  247. package/website/content/docs/cli-reference/ossa-run.md +0 -66
  248. package/website/content/docs/cli-reference/ossa-schema.md +0 -57
  249. package/website/content/docs/cli-reference/ossa-setup.md +0 -57
  250. package/website/content/docs/cli-reference/ossa-validate.md +0 -66
  251. package/website/content/docs/configuration/index.md +0 -97
  252. package/website/content/docs/contributing.md +0 -599
  253. package/website/content/docs/deployment/github-mirroring.md +0 -924
  254. package/website/content/docs/documentation.md +0 -100
  255. package/website/content/docs/ecosystem/framework-support.md +0 -1361
  256. package/website/content/docs/ecosystem/overview.md +0 -366
  257. package/website/content/docs/errors/index.md +0 -10
  258. package/website/content/docs/examples/aiflow-framework-integration-with-ossa.md +0 -107
  259. package/website/content/docs/examples/catalog.md +0 -300
  260. package/website/content/docs/for-audiences/students-researchers.md +0 -122
  261. package/website/content/docs/getting-started/index.md +0 -92
  262. package/website/content/docs/getting-started/installation.md +0 -155
  263. package/website/content/docs/getting-started/running-agents.md +0 -309
  264. package/website/content/docs/getting-started.md +0 -91
  265. package/website/content/docs/integrations/aiflow.md +0 -104
  266. package/website/content/docs/integrations/drupal.md +0 -105
  267. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  268. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  269. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  270. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  271. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  272. package/website/content/docs/migration-guides/index.md +0 -133
  273. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  274. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  275. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  276. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  277. package/website/content/docs/openapi-extensions/examples.md +0 -550
  278. package/website/content/docs/openapi-extensions/index.md +0 -551
  279. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  280. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  281. package/website/content/docs/ossa-compliant-badge.md +0 -251
  282. package/website/content/docs/pre-release/index.md +0 -175
  283. package/website/content/docs/quick-reference.md +0 -17
  284. package/website/content/docs/readme.md +0 -35
  285. package/website/content/docs/releases/v0.2.6.md +0 -99
  286. package/website/content/docs/schema-reference/agent-capabilities.md +0 -50
  287. package/website/content/docs/schema-reference/agent-id.md +0 -52
  288. package/website/content/docs/schema-reference/agent-name.md +0 -50
  289. package/website/content/docs/schema-reference/agent-role.md +0 -54
  290. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  291. package/website/content/docs/schema-reference/agent-version.md +0 -50
  292. package/website/content/docs/schema-reference/autonomy.md +0 -568
  293. package/website/content/docs/schema-reference/constraints.md +0 -543
  294. package/website/content/docs/schema-reference/index.md +0 -45
  295. package/website/content/docs/schema-reference/llm-config.md +0 -445
  296. package/website/content/docs/schema-reference/observability.md +0 -654
  297. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  298. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  299. package/website/content/docs/schema-reference/tools.md +0 -628
  300. package/website/content/docs/templates/blog-post.md +0 -43
  301. package/website/content/docs/types-reference/index.md +0 -105
  302. package/website/content/docs/use-cases/00-index.md +0 -395
  303. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  304. package/website/content/docs/use-cases/customer-support.md +0 -1234
  305. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  306. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  307. package/website/content/docs/versioning.md +0 -288
  308. package/website/dev.sh +0 -53
  309. package/website/docker-compose.dev.yml +0 -36
  310. package/website/lib/version.ts +0 -35
  311. package/website/lib/versions.json +0 -103
  312. package/website/next.config.ts +0 -18
  313. package/website/nginx.conf +0 -32
  314. package/website/package-lock.json +0 -9679
  315. package/website/package.json +0 -59
  316. package/website/postcss.config.mjs +0 -9
  317. package/website/scripts/fetch-versions.js +0 -166
  318. package/website/scripts/generate-examples-index.js +0 -163
  319. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  320. package/website/scripts/sync-version.js +0 -72
  321. package/website/scripts/sync-wiki.ts +0 -322
  322. package/website/scripts/upload-wiki.ts +0 -199
  323. package/website/styles/_spacing.scss +0 -453
  324. package/website/styles/_tokens.scss +0 -245
  325. package/website/styles/_typography.scss +0 -361
  326. package/website/styles/_variables.scss +0 -287
  327. package/website/tailwind.config.ts +0 -170
@@ -1,370 +0,0 @@
1
- @use '../styles/variables.scss' as *;
2
-
3
- @tailwind base;
4
- @tailwind components;
5
- @tailwind utilities;
6
-
7
- @layer base {
8
- :root {
9
- /* ========================================================================
10
- PRIMARY BRAND COLOR - Deep Purple
11
- ======================================================================== */
12
- --ossa-primary-50: #{$ossa-primary-50};
13
- --ossa-primary-100: #{$ossa-primary-100};
14
- --ossa-primary-200: #{$ossa-primary-200};
15
- --ossa-primary-300: #{$ossa-primary-300};
16
- --ossa-primary-400: #{$ossa-primary-400};
17
- --ossa-primary: #{$ossa-primary-500};
18
- --ossa-primary-500: #{$ossa-primary-500};
19
- --ossa-primary-600: #{$ossa-primary-600};
20
- --ossa-primary-700: #{$ossa-primary-700};
21
- --ossa-primary-800: #{$ossa-primary-800};
22
- --ossa-primary-900: #{$ossa-primary-900};
23
- --ossa-primary-950: #{$ossa-primary-950};
24
-
25
- /* ========================================================================
26
- SECONDARY BRAND COLOR - Cyan Blue
27
- ======================================================================== */
28
- --ossa-secondary-50: #{$ossa-secondary-50};
29
- --ossa-secondary-100: #{$ossa-secondary-100};
30
- --ossa-secondary-200: #{$ossa-secondary-200};
31
- --ossa-secondary-300: #{$ossa-secondary-300};
32
- --ossa-secondary-400: #{$ossa-secondary-400};
33
- --ossa-secondary: #{$ossa-secondary-500};
34
- --ossa-secondary-500: #{$ossa-secondary-500};
35
- --ossa-secondary-600: #{$ossa-secondary-600};
36
- --ossa-secondary-700: #{$ossa-secondary-700};
37
- --ossa-secondary-800: #{$ossa-secondary-800};
38
- --ossa-secondary-900: #{$ossa-secondary-900};
39
- --ossa-secondary-950: #{$ossa-secondary-950};
40
-
41
- /* ========================================================================
42
- ACCENT COLOR - Light Purple
43
- ======================================================================== */
44
- --ossa-accent-50: #{$ossa-accent-50};
45
- --ossa-accent-100: #{$ossa-accent-100};
46
- --ossa-accent-200: #{$ossa-accent-200};
47
- --ossa-accent-300: #{$ossa-accent-300};
48
- --ossa-accent-400: #{$ossa-accent-400};
49
- --ossa-accent: #{$ossa-accent-500};
50
- --ossa-accent-500: #{$ossa-accent-500};
51
- --ossa-accent-600: #{$ossa-accent-600};
52
- --ossa-accent-700: #{$ossa-accent-700};
53
- --ossa-accent-800: #{$ossa-accent-800};
54
- --ossa-accent-900: #{$ossa-accent-900};
55
- --ossa-accent-950: #{$ossa-accent-950};
56
-
57
- /* ========================================================================
58
- DARK PURPLE - For contrast and depth
59
- ======================================================================== */
60
- --ossa-dark-purple-50: #{$ossa-dark-purple-50};
61
- --ossa-dark-purple-100: #{$ossa-dark-purple-100};
62
- --ossa-dark-purple-200: #{$ossa-dark-purple-200};
63
- --ossa-dark-purple-300: #{$ossa-dark-purple-300};
64
- --ossa-dark-purple-400: #{$ossa-dark-purple-400};
65
- --ossa-dark-purple-500: #{$ossa-dark-purple-500};
66
- --ossa-dark-purple-600: #{$ossa-dark-purple-600};
67
- --ossa-dark-purple-700: #{$ossa-dark-purple-700};
68
- --ossa-dark-purple-800: #{$ossa-dark-purple-800};
69
- --ossa-dark-purple: #{$ossa-dark-purple-900};
70
- --ossa-dark-purple-900: #{$ossa-dark-purple-900};
71
- --ossa-dark-purple-950: #{$ossa-dark-purple-950};
72
-
73
- /* ========================================================================
74
- SEMANTIC COLORS
75
- ======================================================================== */
76
- /* Success - Green */
77
- --ossa-success-50: #{$ossa-success-50};
78
- --ossa-success-100: #{$ossa-success-100};
79
- --ossa-success-200: #{$ossa-success-200};
80
- --ossa-success-300: #{$ossa-success-300};
81
- --ossa-success-400: #{$ossa-success-400};
82
- --ossa-success: #{$ossa-success-500};
83
- --ossa-success-500: #{$ossa-success-500};
84
- --ossa-success-600: #{$ossa-success-600};
85
- --ossa-success-700: #{$ossa-success-700};
86
- --ossa-success-800: #{$ossa-success-800};
87
- --ossa-success-900: #{$ossa-success-900};
88
- --ossa-success-950: #{$ossa-success-950};
89
-
90
- /* Warning - Amber */
91
- --ossa-warning-50: #{$ossa-warning-50};
92
- --ossa-warning-100: #{$ossa-warning-100};
93
- --ossa-warning-200: #{$ossa-warning-200};
94
- --ossa-warning-300: #{$ossa-warning-300};
95
- --ossa-warning-400: #{$ossa-warning-400};
96
- --ossa-warning: #{$ossa-warning-500};
97
- --ossa-warning-500: #{$ossa-warning-500};
98
- --ossa-warning-600: #{$ossa-warning-600};
99
- --ossa-warning-700: #{$ossa-warning-700};
100
- --ossa-warning-800: #{$ossa-warning-800};
101
- --ossa-warning-900: #{$ossa-warning-900};
102
- --ossa-warning-950: #{$ossa-warning-950};
103
-
104
- /* Error - Red */
105
- --ossa-error-50: #{$ossa-error-50};
106
- --ossa-error-100: #{$ossa-error-100};
107
- --ossa-error-200: #{$ossa-error-200};
108
- --ossa-error-300: #{$ossa-error-300};
109
- --ossa-error-400: #{$ossa-error-400};
110
- --ossa-error: #{$ossa-error-500};
111
- --ossa-error-500: #{$ossa-error-500};
112
- --ossa-error-600: #{$ossa-error-600};
113
- --ossa-error-700: #{$ossa-error-700};
114
- --ossa-error-800: #{$ossa-error-800};
115
- --ossa-error-900: #{$ossa-error-900};
116
- --ossa-error-950: #{$ossa-error-950};
117
-
118
- /* Info - Cyan */
119
- --ossa-info-50: #{$ossa-info-50};
120
- --ossa-info-100: #{$ossa-info-100};
121
- --ossa-info-200: #{$ossa-info-200};
122
- --ossa-info-300: #{$ossa-info-300};
123
- --ossa-info-400: #{$ossa-info-400};
124
- --ossa-info: #{$ossa-info-500};
125
- --ossa-info-500: #{$ossa-info-500};
126
- --ossa-info-600: #{$ossa-info-600};
127
- --ossa-info-700: #{$ossa-info-700};
128
- --ossa-info-800: #{$ossa-info-800};
129
- --ossa-info-900: #{$ossa-info-900};
130
- --ossa-info-950: #{$ossa-info-950};
131
-
132
- /* ========================================================================
133
- NEUTRAL COLORS
134
- ======================================================================== */
135
- --ossa-gray-50: #{$ossa-gray-50};
136
- --ossa-gray-100: #{$ossa-gray-100};
137
- --ossa-gray-200: #{$ossa-gray-200};
138
- --ossa-gray-300: #{$ossa-gray-300};
139
- --ossa-gray-400: #{$ossa-gray-400};
140
- --ossa-gray-500: #{$ossa-gray-500};
141
- --ossa-gray-600: #{$ossa-gray-600};
142
- --ossa-gray-700: #{$ossa-gray-700};
143
- --ossa-gray-800: #{$ossa-gray-800};
144
- --ossa-gray-900: #{$ossa-gray-900};
145
- --ossa-gray-950: #{$ossa-gray-950};
146
-
147
- --ossa-white: #{$ossa-white};
148
- --ossa-black: #{$ossa-black};
149
- --ossa-dark: #{$ossa-dark};
150
-
151
- /* ========================================================================
152
- FOCUS RING COLORS - For Accessibility
153
- ======================================================================== */
154
- --ossa-focus-primary: #{$ossa-focus-primary};
155
- --ossa-focus-secondary: #{$ossa-focus-secondary};
156
- --ossa-focus-accent: #{$ossa-focus-accent};
157
-
158
- /* ========================================================================
159
- BRAND GRADIENTS
160
- ======================================================================== */
161
- --gradient-brand: #{$gradient-brand};
162
- --gradient-hero: #{$gradient-hero};
163
- --gradient-button: #{$gradient-button};
164
-
165
- /* ========================================================================
166
- TYPOGRAPHY SYSTEM
167
- ======================================================================== */
168
- /* Font Families */
169
- --font-sans: #{$font-sans};
170
- --font-mono: #{$font-mono};
171
-
172
- /* Type Scale */
173
- --text-display: #{$text-display};
174
- --text-h1: #{$text-h1};
175
- --text-h2: #{$text-h2};
176
- --text-h3: #{$text-h3};
177
- --text-h4: #{$text-h4};
178
- --text-h5: #{$text-h5};
179
- --text-h6: #{$text-h6};
180
- --text-body: #{$text-body};
181
- --text-small: #{$text-small};
182
-
183
- /* Line Heights */
184
- --leading-display: #{$leading-display};
185
- --leading-h1: #{$leading-h1};
186
- --leading-h2: #{$leading-h2};
187
- --leading-h3: #{$leading-h3};
188
- --leading-h4: #{$leading-h4};
189
- --leading-h5: #{$leading-h5};
190
- --leading-h6: #{$leading-h6};
191
- --leading-body: #{$leading-body};
192
- --leading-small: #{$leading-small};
193
-
194
- /* Letter Spacing */
195
- --tracking-display: #{$tracking-display};
196
- --tracking-h1: #{$tracking-h1};
197
- --tracking-normal: #{$tracking-normal};
198
-
199
- /* Font Weights */
200
- --font-normal: #{$font-normal};
201
- --font-medium: #{$font-medium};
202
- --font-semibold: #{$font-semibold};
203
- --font-bold: #{$font-bold};
204
- --font-extrabold: #{$font-extrabold};
205
-
206
- /* ========================================================================
207
- CODE SYNTAX HIGHLIGHTING
208
- ======================================================================== */
209
- --code-bg: #{$code-bg};
210
- --code-text: #{$code-text};
211
- --code-keyword: #{$code-keyword};
212
- --code-string: #{$code-string};
213
- --code-comment: #{$code-comment};
214
- }
215
-
216
- html {
217
- scroll-behavior: smooth;
218
- font-family: $font-sans;
219
- }
220
-
221
- body {
222
- @apply font-sans text-gray-900 bg-white antialiased;
223
- font-size: $text-body;
224
- line-height: $leading-body;
225
- font-weight: $font-normal;
226
- }
227
-
228
- /* ========================================================================
229
- TYPOGRAPHY HIERARCHY - Based on Issue #44 Brand Guide
230
- ======================================================================== */
231
-
232
- /* Display - For hero sections */
233
- .text-display {
234
- font-size: $text-display;
235
- line-height: $leading-display;
236
- font-weight: $font-extrabold;
237
- letter-spacing: $tracking-display;
238
- }
239
-
240
- h1, .h1 {
241
- font-size: $text-h1;
242
- line-height: $leading-h1;
243
- font-weight: $font-bold;
244
- letter-spacing: $tracking-h1;
245
- }
246
-
247
- h2, .h2 {
248
- font-size: $text-h2;
249
- line-height: $leading-h2;
250
- font-weight: $font-bold;
251
- }
252
-
253
- h3, .h3 {
254
- font-size: $text-h3;
255
- line-height: $leading-h3;
256
- font-weight: $font-semibold;
257
- }
258
-
259
- h4, .h4 {
260
- font-size: $text-h4;
261
- line-height: $leading-h4;
262
- font-weight: $font-semibold;
263
- }
264
-
265
- h5, .h5 {
266
- font-size: $text-h5;
267
- line-height: $leading-h5;
268
- font-weight: $font-semibold;
269
- }
270
-
271
- h6, .h6 {
272
- font-size: $text-h6;
273
- line-height: $leading-h6;
274
- font-weight: $font-semibold;
275
- }
276
-
277
- /* Body text */
278
- p, .text-body {
279
- font-size: $text-body;
280
- line-height: $leading-body;
281
- }
282
-
283
- /* Small text */
284
- small, .text-small {
285
- font-size: $text-small;
286
- line-height: $leading-small;
287
- }
288
-
289
- code {
290
- @apply font-mono;
291
- }
292
-
293
- pre {
294
- @apply bg-code-bg text-code-text rounded-lg p-4 overflow-x-auto;
295
- }
296
-
297
- pre code {
298
- @apply text-code-text;
299
- }
300
-
301
- a {
302
- cursor: pointer;
303
- }
304
-
305
- .sr-only {
306
- position: absolute;
307
- width: 1px;
308
- height: 1px;
309
- padding: 0;
310
- margin: -1px;
311
- overflow: hidden;
312
- clip: rect(0, 0, 0, 0);
313
- white-space: nowrap;
314
- border-width: 0;
315
- }
316
-
317
- .focus\:not-sr-only:focus {
318
- position: static;
319
- width: auto;
320
- height: auto;
321
- padding: inherit;
322
- margin: inherit;
323
- overflow: visible;
324
- clip: auto;
325
- white-space: normal;
326
- }
327
- }
328
-
329
- @layer components {
330
- .btn-primary {
331
- @apply bg-primary text-white px-6 py-3 rounded-lg font-medium hover:opacity-90 transition-opacity focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2;
332
- }
333
-
334
- .bg-gradient-hero {
335
- background: var(--gradient-hero);
336
- }
337
-
338
- .bg-gradient-button {
339
- background: var(--gradient-button);
340
- }
341
-
342
- .bg-code-bg {
343
- background-color: var(--code-bg);
344
- }
345
-
346
- .text-code-text {
347
- color: var(--code-text);
348
- }
349
-
350
- .text-success {
351
- color: var(--ossa-success);
352
- }
353
-
354
- .btn-secondary {
355
- @apply bg-secondary text-white px-6 py-3 rounded-lg font-medium hover:opacity-90 transition-opacity focus:outline-none focus:ring-2 focus:ring-secondary focus:ring-offset-2;
356
- }
357
-
358
- .btn-outline {
359
- @apply border-2 border-primary text-primary px-6 py-3 rounded-lg font-medium hover:bg-primary hover:text-white transition-colors focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2;
360
- }
361
-
362
- .card {
363
- @apply bg-white rounded-lg shadow-md p-6 border border-gray-300;
364
- }
365
-
366
- .card-hover {
367
- @apply card hover:shadow-lg transition-shadow;
368
- }
369
- }
370
-
@@ -1,106 +0,0 @@
1
- import type { Metadata } from 'next';
2
- import { Inter } from 'next/font/google';
3
- import './globals.scss';
4
- import { Header } from '@/components/layout/Header';
5
- import { Footer } from '@/components/layout/Footer';
6
- import { StructuredData } from '@/components/StructuredData';
7
-
8
- const inter = Inter({ subsets: ['latin'], variable: '--font-inter' });
9
-
10
- export const metadata: Metadata = {
11
- title: {
12
- default: 'Open Standard Agents - Industry Standard for Agent Orchestration',
13
- template: '%s | Open Standard Agents',
14
- },
15
- description: 'The vendor-neutral specification for multi-agent systems. Write once, deploy anywhere. Zero vendor lock-in.',
16
- keywords: ['OSSA', 'AI Agents', 'OpenAPI', 'Standard', 'Specification', 'AI', 'Machine Learning', 'Agent Framework'],
17
- authors: [{ name: 'OSSA Standards Team' }],
18
- creator: 'OSSA Standards Team',
19
- publisher: 'OSSA Standards Team',
20
- metadataBase: new URL('https://openstandardagents.org'),
21
- openGraph: {
22
- title: 'Open Standard Agents - Industry Standard for Agent Orchestration',
23
- description: 'The vendor-neutral specification for multi-agent systems. Write once, deploy anywhere.',
24
- type: 'website',
25
- locale: 'en_US',
26
- siteName: 'Open Standard Agents',
27
- images: [
28
- {
29
- url: '/og-image.png',
30
- width: 1200,
31
- height: 630,
32
- alt: 'OSSA - Open Standard for Scalable AI Agents',
33
- },
34
- ],
35
- },
36
- twitter: {
37
- card: 'summary_large_image',
38
- title: 'Open Standard Agents - Industry Standard for Agent Orchestration',
39
- description: 'The vendor-neutral specification for multi-agent systems',
40
- creator: '@openstandardagents',
41
- },
42
- robots: {
43
- index: true,
44
- follow: true,
45
- googleBot: {
46
- index: true,
47
- follow: true,
48
- 'max-video-preview': -1,
49
- 'max-image-preview': 'large',
50
- 'max-snippet': -1,
51
- },
52
- },
53
- alternates: {
54
- canonical: 'https://openstandardagents.org',
55
- },
56
- };
57
-
58
- export default function RootLayout({
59
- children,
60
- }: {
61
- children: React.ReactNode;
62
- }) {
63
- return (
64
- <html lang="en" className={inter.variable}>
65
- <head>
66
- <link rel="icon" href="/assets/favicon.svg" type="image/svg+xml" />
67
- <link rel="apple-touch-icon" href="/assets/brand/ossa-logo.svg" />
68
- <StructuredData
69
- type="Organization"
70
- data={{
71
- description: 'Open Standard Agents Organization - Maintaining the Industry Standard for Agent Orchestration',
72
- }}
73
- />
74
- <StructuredData
75
- type="WebSite"
76
- data={{
77
- potentialAction: {
78
- '@type': 'SearchAction',
79
- target: {
80
- '@type': 'EntryPoint',
81
- urlTemplate: 'https://openstandardagents.org/search?q={search_term_string}',
82
- },
83
- 'query-input': 'required name=search_term_string',
84
- },
85
- }}
86
- />
87
- </head>
88
- <body suppressHydrationWarning>
89
- <div className="flex flex-col min-h-screen">
90
- <a
91
- href="#main-content"
92
- className="sr-only focus:not-sr-only focus:absolute focus:top-4 focus:left-4 focus:z-50 focus:px-4 focus:py-2 focus:bg-primary focus:text-white focus:rounded"
93
- >
94
- Skip to main content
95
- </a>
96
- <Header />
97
- <main id="main-content" className="flex-grow" tabIndex={-1}>
98
- {children}
99
- </main>
100
- <Footer />
101
- </div>
102
- </body>
103
- </html>
104
- );
105
- }
106
-
@@ -1,183 +0,0 @@
1
- import type { Metadata } from 'next';
2
- import fs from 'fs';
3
- import Link from 'next/link';
4
- import path from 'path';
5
-
6
- export const metadata: Metadata = {
7
- title: 'Apache License 2.0 - Open Standard Agents',
8
- description: 'Review the Apache License 2.0 terms that govern the Open Standard Agents project and ecosystem.',
9
- };
10
-
11
- function getLicenseText(): string {
12
- const licensePath = path.join(process.cwd(), 'public/licenses/apache-2.0.txt');
13
- return fs.readFileSync(licensePath, 'utf-8');
14
- }
15
-
16
- export default function LicensePage() {
17
- const licenseText = getLicenseText();
18
-
19
- return (
20
- <>
21
- <div className="bg-gradient-to-br from-secondary via-primary to-accent text-white py-20 px-4">
22
- <div className="container mx-auto max-w-4xl text-center">
23
- <div className="inline-flex items-center justify-center w-20 h-20 bg-white/20 backdrop-blur-sm rounded-full mb-6">
24
- <svg className="w-10 h-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
25
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 13h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V20a2 2 0 01-2 2z" />
26
- </svg>
27
- </div>
28
- <h1 className="text-5xl font-bold mb-4">Apache License 2.0</h1>
29
- <p className="text-xl text-white/90 mb-6">
30
- The governing open source license for the Open Standard Agents project and its documentation.
31
- </p>
32
- <div className="flex flex-col sm:flex-row gap-4 justify-center">
33
- <Link
34
- href="#license-text"
35
- className="inline-flex items-center justify-center px-6 py-3 bg-white text-primary font-semibold rounded-lg shadow-lg hover:-translate-y-0.5 transition-all"
36
- >
37
- Read Full Text
38
- </Link>
39
- <a
40
- href="https://opensource.org/licenses/Apache-2.0"
41
- target="_blank"
42
- rel="noopener noreferrer"
43
- className="inline-flex items-center justify-center px-6 py-3 bg-white/10 text-white font-semibold border border-white/30 rounded-lg hover:bg-white/20 transition-all"
44
- >
45
- Official License Page
46
- </a>
47
- <a
48
- href="/licenses/apache-2.0.txt"
49
- className="inline-flex items-center justify-center px-6 py-3 bg-white/10 text-white font-semibold border border-white/30 rounded-lg hover:bg-white/20 transition-all"
50
- >
51
- Download TXT
52
- </a>
53
- </div>
54
- </div>
55
- </div>
56
-
57
- <div className="container mx-auto max-w-6xl px-4 py-12 space-y-12">
58
- <section className="grid md:grid-cols-3 gap-6">
59
- <div className="bg-white rounded-xl shadow-md p-6 border border-gray-100">
60
- <div className="w-12 h-12 rounded-lg bg-primary/10 text-primary flex items-center justify-center mb-4">
61
- <svg className="w-7 h-7" fill="none" stroke="currentColor" viewBox="0 0 24 24">
62
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M12 4v16m0 0l3-3m-3 3l-3-3m9-5h3m-3 0l-3-3m3 3l-3 3M9 12H6m3 0l3-3m-3 3l3 3" />
63
- </svg>
64
- </div>
65
- <h2 className="text-2xl font-semibold mb-3 text-gray-900">Permissions</h2>
66
- <ul className="space-y-2 text-gray-700 list-disc list-inside">
67
- <li>Use, modify, and distribute the specification and code</li>
68
- <li>Commercial and private use allowed</li>
69
- <li>Patent grants included for contributors</li>
70
- </ul>
71
- </div>
72
-
73
- <div className="bg-white rounded-xl shadow-md p-6 border border-gray-100">
74
- <div className="w-12 h-12 rounded-lg bg-secondary/10 text-secondary flex items-center justify-center mb-4">
75
- <svg className="w-7 h-7" fill="none" stroke="currentColor" viewBox="0 0 24 24">
76
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
77
- </svg>
78
- </div>
79
- <h2 className="text-2xl font-semibold mb-3 text-gray-900">Conditions</h2>
80
- <ul className="space-y-2 text-gray-700 list-disc list-inside">
81
- <li>Preserve copyright and license notices</li>
82
- <li>Include a NOTICE file when required</li>
83
- <li>Document significant changes to the work</li>
84
- </ul>
85
- </div>
86
-
87
- <div className="bg-white rounded-xl shadow-md p-6 border border-gray-100">
88
- <div className="w-12 h-12 rounded-lg bg-accent/10 text-accent flex items-center justify-center mb-4">
89
- <svg className="w-7 h-7" fill="none" stroke="currentColor" viewBox="0 0 24 24">
90
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M10 9V5a2 2 0 012-2h6a2 2 0 012 2v6m-8 4h6m-6 0l3 3m-3-3l3-3M15 9h.01M5 7h.01M7 5h.01M19 15h.01M7 17h.01M5 19h.01M3 3l18 18" />
91
- </svg>
92
- </div>
93
- <h2 className="text-2xl font-semibold mb-3 text-gray-900">Limitations</h2>
94
- <ul className="space-y-2 text-gray-700 list-disc list-inside">
95
- <li>No trademark license is granted</li>
96
- <li>No warranty - software is provided "as is"</li>
97
- <li>Liability is limited under the terms</li>
98
- </ul>
99
- </div>
100
- </section>
101
-
102
- <section className="bg-gray-50 rounded-2xl border border-gray-200 p-8 shadow-sm">
103
- <div className="flex flex-col md:flex-row md:items-center md:justify-between gap-6 mb-6">
104
- <div>
105
- <p className="text-sm font-semibold text-primary uppercase tracking-wide">Open Source Commitment</p>
106
- <h2 className="text-3xl font-bold text-gray-900 mt-2">Why Apache 2.0?</h2>
107
- <p className="text-lg text-gray-700 mt-3 max-w-3xl">
108
- Apache 2.0 offers a clear, business-friendly open source model with patent grants, making it safe for
109
- enterprises, vendors, and researchers to build on the Open Standard Agents specification and ecosystem.
110
- </p>
111
- </div>
112
- <div className="flex gap-3">
113
- <a
114
- href="/licenses/apache-2.0.txt"
115
- className="inline-flex items-center justify-center px-4 py-2 bg-primary text-white font-semibold rounded-lg shadow hover:-translate-y-0.5 transition-all"
116
- >
117
- Download License
118
- </a>
119
- <a
120
- href="https://opensource.org/licenses/Apache-2.0"
121
- target="_blank"
122
- rel="noopener noreferrer"
123
- className="inline-flex items-center justify-center px-4 py-2 bg-white text-primary font-semibold border border-primary rounded-lg hover:bg-primary/10 transition-all"
124
- >
125
- OpenSource.org
126
- </a>
127
- </div>
128
- </div>
129
- <div className="grid md:grid-cols-2 gap-6">
130
- <div className="bg-white rounded-xl border border-gray-100 p-6 shadow-sm">
131
- <h3 className="text-xl font-semibold text-gray-900 mb-3">Using OSSA in your projects</h3>
132
- <ul className="space-y-2 text-gray-700 leading-relaxed list-disc list-inside">
133
- <li>Embed the specification, reference implementations, or docs in commercial and open source products.</li>
134
- <li>Attribute OSSA and retain the license headers in source distributions.</li>
135
- <li>Contribute improvements knowing patent grants apply to contributions.</li>
136
- </ul>
137
- </div>
138
- <div className="bg-white rounded-xl border border-gray-100 p-6 shadow-sm">
139
- <h3 className="text-xl font-semibold text-gray-900 mb-3">Need attribution text?</h3>
140
- <p className="text-gray-700 mb-3">
141
- Include the following notice in your documentation or about pages:
142
- </p>
143
- <div className="bg-gray-900 text-gray-100 p-4 rounded-lg text-sm font-mono overflow-x-auto border border-gray-800">
144
- Open Standard Agents Initiative - licensed under the Apache License, Version 2.0. You may not use this
145
- project except in compliance with the License. You may obtain a copy at https://opensource.org/licenses/Apache-2.0
146
- </div>
147
- </div>
148
- </div>
149
- </section>
150
-
151
- <section id="license-text" className="space-y-4">
152
- <div className="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3">
153
- <div>
154
- <p className="text-sm font-semibold text-primary uppercase tracking-wide">Full Text</p>
155
- <h2 className="text-3xl font-bold text-gray-900">Apache License, Version 2.0</h2>
156
- </div>
157
- <div className="flex gap-3">
158
- <a
159
- href="/licenses/apache-2.0.txt"
160
- className="inline-flex items-center justify-center px-4 py-2 bg-primary text-white font-semibold rounded-lg shadow hover:-translate-y-0.5 transition-all"
161
- >
162
- Download .txt
163
- </a>
164
- <a
165
- href="https://opensource.org/licenses/Apache-2.0"
166
- target="_blank"
167
- rel="noopener noreferrer"
168
- className="inline-flex items-center justify-center px-4 py-2 bg-white text-primary font-semibold border border-primary rounded-lg hover:bg-primary/10 transition-all"
169
- >
170
- View on OpenSource.org
171
- </a>
172
- </div>
173
- </div>
174
- <div className="bg-gray-900 text-gray-100 rounded-2xl border border-gray-800 shadow-inner">
175
- <div className="max-h-[32rem] overflow-y-auto p-6">
176
- <pre className="whitespace-pre-wrap font-mono text-sm leading-relaxed">{licenseText}</pre>
177
- </div>
178
- </div>
179
- </section>
180
- </div>
181
- </>
182
- );
183
- }
@@ -1,18 +0,0 @@
1
- import Link from 'next/link';
2
-
3
- export default function NotFound() {
4
- return (
5
- <div className="container mx-auto px-4 py-16 text-center">
6
- <h1 className="text-4xl font-bold mb-4">404 - Page Not Found</h1>
7
- <p className="text-lg text-gray-600 mb-8">
8
- The page you're looking for doesn't exist.
9
- </p>
10
- <Link
11
- href="/"
12
- className="inline-block px-6 py-3 bg-primary text-white rounded-lg hover:bg-primary/90 transition-colors"
13
- >
14
- Go Home
15
- </Link>
16
- </div>
17
- );
18
- }