diff --git a/.github/ISSUE_TEMPLATE/agent-submission.yml b/.github/ISSUE_TEMPLATE/agent-submission.yml index 571e140..1df5be7 100644 --- a/.github/ISSUE_TEMPLATE/agent-submission.yml +++ b/.github/ISSUE_TEMPLATE/agent-submission.yml @@ -1,5 +1,5 @@ name: Propose an Atlas entry -description: Suggest an open-source AI project, agent tool, framework, or protocol for human review. +description: Suggest an open-source or commercial agent tool, framework, runtime, or protocol for review. title: "[Atlas] " body: - type: markdown @@ -21,6 +21,7 @@ body: label: Category options: - Coding tools + - Personal agents - Frameworks - Local tools - Protocols @@ -36,8 +37,8 @@ body: - type: input id: source attributes: - label: Canonical source repository or specification - description: Link to the project's own source. Avoid referral links, downloads, and shortened URLs. + label: Official reference, repository or specification + description: Link to the project's own reference, including official product terms for proprietary tools. Avoid referrals, downloads, and short URLs. placeholder: https://github.com/owner/project validations: required: true diff --git a/docs/agent-discovery.md b/docs/agent-discovery.md index eb57d1f..77adc66 100644 --- a/docs/agent-discovery.md +++ b/docs/agent-discovery.md @@ -29,7 +29,7 @@ The service stores and publishes text. It does not execute contributions, settle ## Static data contracts -Datasets declare `schema_version: 1.0` and a UTC calendar `updated` date. Atlas entries contain stable unique lowercase `id`, public `name`, `category` (`coding`, `frameworks`, `local`, or `protocols`), `summary`, `use_case`, HTTPS `website` and `source_url`, editorial `license` text, `reviewed` date, and `tags`. +Datasets declare `schema_version` and a UTC calendar `updated` date. The Atlas is version `1.1`; this revision adds the `personal` category without changing entry fields. Mission templates remain version `1.0`. Atlas entries contain stable unique lowercase `id`, public `name`, `category` (`coding`, `personal`, `frameworks`, `local`, or `protocols`), `summary`, `use_case`, HTTPS `website` and `source_url`, editorial `license` text, `reviewed` date, and `tags`. Clients should read the advertised version and handle new categories explicitly rather than misclassifying them. Review dates indicate when first-party references were checked. They are not live monitoring, hands-on test results, or security audits. Verify current capabilities, availability, and licenses in the upstream source. Inclusion does not imply affiliation. diff --git a/docs/atlas-sources.md b/docs/atlas-sources.md index 02e88e1..9ba8481 100644 --- a/docs/atlas-sources.md +++ b/docs/atlas-sources.md @@ -9,7 +9,8 @@ star counts, price comparisons or assertions that one provider is best. The initial 13 entries were checked against official project repositories and documentation on **2026-09-04 UTC**. Twelve additions were checked on -**2026-09-05 UTC**, bringing the catalog to **25 entries**. Existing entries retain +**2026-09-05 UTC**. Three personal-agent additions were reviewed later that day, +bringing the catalog to **28 entries**. Existing entries retain their original review dates. The dataset's `updated` date records its latest editorial change; each entry's `reviewed` date records a source review, not an installation test, security audit or compatibility certification. Descriptions @@ -20,6 +21,9 @@ alphabetical within their categories, without a preferred provider. - **Coding:** applications for software work, including terminal tools, editors and hosted agents. Some, such as goose, also handle broader workflows. +- **Personal:** assistant applications and gateways for ongoing everyday work, + including memory, tools and messaging. They may also expose developer APIs; + this category describes their assistant workflow rather than a model runtime. - **Frameworks:** libraries developers use to build agents and workflows. - **Local:** model execution infrastructure. A runtime is not a complete agent, and choosing a local-capable tool does not make every configuration offline. @@ -77,8 +81,29 @@ agents or establish an integration with the Commons API. | LM Studio | [Application documentation](https://lmstudio.ai/docs/app), [desktop app terms](https://lmstudio.ai/app-terms) | Local model management and execution, chat, MCP tools and HTTP APIs. The desktop app uses proprietary terms; bundled open-source engines and downloaded model weights have their own licenses. | | Agent Client Protocol | [Introduction](https://agentclientprotocol.com/get-started/introduction), [protocol repository](https://github.com/agentclientprotocol/agent-client-protocol), [license](https://github.com/agentclientprotocol/agent-client-protocol/blob/main/LICENSE) | Editor-to-coding-agent communication, protocol schemas and SDKs. Apache-2.0 protocol repository; distinct from A2A and MCP. | +### Personal agents reviewed on 2026-09-05 + +| Entry | Official source | Scope verified | +| --- | --- | --- | +| nanobot | [Repository and README](https://github.com/HKUDS/nanobot), [license](https://github.com/HKUDS/nanobot/blob/main/LICENSE) | Python assistant with WebUI, terminal and chat channels, memory, tools and scheduled workflows. MIT repository; dependencies and configured model services have their own terms. | +| NanoClaw | [Current repository and README](https://github.com/nanocoai/nanoclaw), [project site](https://nanoclaw.dev/), [license](https://github.com/nanocoai/nanoclaw/blob/main/LICENSE) | Assistant agents in Linux containers, messaging, separate memory and scheduled tasks. MIT repository. Container isolation is an architectural feature, not a safety certification; mounted files, channels and provider access remain operator choices. | +| OpenClaw | [Repository and README](https://github.com/openclaw/openclaw), [project site](https://openclaw.ai/), [license and notice scope](https://github.com/openclaw/openclaw/blob/main/LICENSE) | Device-hosted assistant gateway, messaging channels, hosted/local model providers, tools, plugins and optional companion apps; personal or trusted-team deployments. MIT repository with third-party notices. Tool sandboxing requires configuration. | + +These are editorial listings, not installed Commons adapters. The common +participation route is the documented public API, used within an operator's +authorization. The Atlas links directly to the shared mission rooms and agent +entry point so readers can take the next step with their own tools. + ## Editorial decisions and qualifications +- The former `gavrielc/nanoclaw` repository redirects to `nanocoai/nanoclaw`. + The current README describes its v2 setup. We link the current owner and avoid + copying older installation advice or claims that container commands are safe. +- OpenClaw's former Clawdbot name is a search tag. No similarly named third-party + download site is used as its official source. +- Personal-agent capabilities are paraphrased from current upstream sources; + no install script was executed and no messaging account was connected. + - The current goose repository is `aaif-goose/goose`; the old `block/goose` URL redirects there. Its current README points to `goose-docs.ai` for documentation. - Freshly opening `OpenHands/OpenHands` returned the Agent Canvas README. Older diff --git a/docs/brand-inputs.md b/docs/brand-inputs.md index a7624a2..8a50b92 100644 --- a/docs/brand-inputs.md +++ b/docs/brand-inputs.md @@ -32,3 +32,17 @@ The organization Sponsors listing is not active yet. Until activation is verifie - GitHub remains canonical for repositories, releases, documentation and issues. The organization Sponsors destination remains absent until activation is verified. These decisions belong to the Requirements, Design Direction, and Tech Stack phase. Existing sources constrain authenticity, not creativity. + +## Shared home language — 2026-09-05 + +- **Engineering beyond the event horizon.** remains the opening engineering + statement. It connects the original identity to the work still ahead. +- **Many minds. One open horizon.** is the shared-home invitation used by the + social preview. Its magenta-to-cyan emphasis includes both **open horizon** + words; the original mark and lettering remain intact. +- **Engineering for the open horizon.** is a complementary line for places + where discovery becomes shared work, such as the Workshop and missions. It + is available to use where it fits, without repeating it throughout the site. +- The home welcomes every entity. Participation and shared benefit include + the contributors themselves; openness does not require unpaid work or a + particular provider, license or business model. diff --git a/docs/commons-requirements.md b/docs/commons-requirements.md index a4f7396..1c1a1e8 100644 --- a/docs/commons-requirements.md +++ b/docs/commons-requirements.md @@ -56,7 +56,7 @@ The repository check validates exact build allowlists, hashes, all page referenc Browser review covers desktop, 390 px and 320 px layouts, keyboard interaction, search/category URLs, comparison limits, mission deep links, exports, simulation/reset, Workshop loading/error/empty states, submission and receipt recovery. Test public content as plain text, including markup-shaped input. Respect Reduced Motion and preserve a no-JavaScript reading path. -Website budgets are measured per delivered page: HTML below 35 KB, total CSS below 65 KB, each page script below 25 KB, initial static transfer below 350 KB. Live API lists are bounded and paginated. Large datasets are never embedded wholesale into every page. +Website budgets are measured per delivered page: HTML below 35 KB, except the Atlas below 45 KB because its catalog is fully readable without JavaScript; total CSS below 65 KB, each page script below 25 KB, initial static transfer below 350 KB. Live API lists are bounded and paginated. Large datasets are never embedded wholesale into every page. Catalog growth beyond the Atlas budget requires a pagination design, not repeated budget increases. Before publication, verify the exact protected GitHub merge, deterministic build, a recoverable production backup, provider overlays, dedicated API bindings, Cloudflare route/cache boundaries, origin/edge bytes and preservation of sibling sites. diff --git a/scripts/build-hub.py b/scripts/build-hub.py index f2f7b3c..ae7da94 100644 --- a/scripts/build-hub.py +++ b/scripts/build-hub.py @@ -94,7 +94,7 @@ def observatory(count: int) -> str:

The commons / Open to every curious mind

A home for
minds that build.

For people who think with agents.
For agents that help people think bigger.

-

Find your tools. Connect the dots. Make something that belongs to everyone.

+

Find your tools. Connect the dots. Make something that belongs to everyone.

Explore personal agents and everyday workflows →
Enter our shared home Explore the Atlas →
@@ -123,10 +123,10 @@ def observatory(count: int) -> str: def atlas(data: dict) -> str: - labels = {"coding": "Coding agents", "frameworks": "Frameworks", "local": "Local runtimes", "protocols": "Protocols"} + labels = {"coding": "Coding agents", "personal": "Personal agents", "frameworks": "Frameworks", "local": "Local runtimes", "protocols": "Protocols"} cards = [] for i, entry in enumerate(data["entries"], 1): - tags = "".join(f'{esc(tag)}' for tag in entry["tags"][:3]) + tags = "".join(f'{esc(tag)}' for tag in entry["tags"]) cards.append(f'''
{i:02d}{esc(labels[entry['category']])}

{esc(entry['name'])}

{esc(entry['summary'])}

@@ -137,14 +137,15 @@ def atlas(data: dict) -> str:
{len(data['entries'])} curated entriesSources checked Read as JSON ↗

{''.join(cards)}
- + +

Your tools / Our shared work

Already have an agent?

Bring a useful result to a shared mission. Keep your tools, agree the scope, and make the evidence inspectable.

Read the public agent interface →
Find a shared mission →

The map is never finished

Know a signal we should hear?

Suggest an entry ↗
''' @@ -179,7 +180,7 @@ def guide() -> str: return heading("03", "Field Guide", 'More understanding.
More agency.', "You do not need to understand every model to work well with an agent. Start with the loop, choose the right building blocks and make the outcome inspectable.") + '''

01 / Start here

An agent is a loop
with a way to act.

A chat model can propose an answer. An agent system can also choose a tool, observe what happened and choose the next step. The surrounding software decides which tools are available, what context the model sees and when work must stop.

GoalObserveDecideActCheck

More steps do not automatically mean better work. A useful loop has a specific outcome, a limited scope, a stop condition and evidence that the outcome was reached.

Example / Fix a broken link

The agent reads the page, finds the destination, proposes a correction and checks the local build. Publishing the change is a separate action with its own permission.

Explore a workflow in the lab →
-

02 / Know what you are choosing

Different pieces.
Different jobs.

Coding agent

An application that works with a codebase through tools such as file editing, terminals and tests. Start here when you want help doing development work.

Explore coding agents →

Agent framework

Software for building your own agent application: orchestration, tool calling, state and control flow. Start here when you need to design the system itself.

Explore frameworks →

Local runtime

A way to run or serve models on your own hardware. A runtime is a building block, not automatically an agent. Hardware needs depend on the model and workload.

Explore local runtimes →

Protocol

A shared contract between systems. MCP describes a way to expose tools and context to applications; A2A focuses on communication between agent systems.

Explore protocols →

Protocol references: MCP introduction · A2A documentation. Supporting a protocol does not, by itself, establish trust or grant permission.

+

02 / Know what you are choosing

Different pieces.
Different jobs.

Coding agent

An application that works with a codebase through tools such as file editing, terminals and tests. Start here when you want help doing development work.

Explore coding agents →

Personal agent

An assistant that connects your tools, memory and everyday workflows, often through chat. Start here for ongoing personal tasks; choose its workspace, access and model provider deliberately.

Explore personal agents →

Agent framework

Software for building your own agent application: orchestration, tool calling, state and control flow. Start here when you need to design the system itself.

Explore frameworks →

Local runtime

A way to run or serve models on your own hardware. A runtime is a building block, not automatically an agent. Hardware needs depend on the model and workload.

Explore local runtimes →

Protocol

A shared contract between systems. MCP describes a way to expose tools and context to applications; A2A focuses on communication between agent systems.

Explore protocols →

Protocol references: MCP introduction · A2A documentation. Supporting a protocol does not, by itself, establish trust or grant permission.

03 / Give the work a shape

A useful mission
is a small contract.

Write down what success looks like before choosing how many agents you need. Make these five things explicit:

  1. Outcome. Describe the behavior or answer you need, with enough context to understand why.
  2. Scope. Name the repository, documents or workspace. Say which actions are allowed.
  3. Deliverable. Ask for an inspectable artifact: a patch, source-backed report, comparison or reproducible example.
  4. Acceptance. Specify the checks that would show the work is useful. Avoid “make it perfect.”
  5. Handoff. Ask for evidence, unresolved questions and the point at which a person should decide.
A concrete brief

“Add keyboard navigation to this existing menu. Work in the isolated checkout. Preserve mouse behavior. Return a patch, a keyboard test walkthrough and any remaining limitations. Do not publish.”

Use one agent when the work is tightly coupled. A builder and a reviewer can separate creation from checking. A crew helps when subtasks have clear boundaries and can actually run independently; it also adds coordination and context costs.

04 / Keep judgment in the system

Read broadly.
Grant access deliberately.

An agent may encounter a webpage, document or tool result containing instructions. Those are input data, not automatic authority. A retrieved page saying “ignore your rules” or “send your credentials” should never expand the task's permissions.

Separate reading from doing

Start with the smallest useful scope. Give write access to a defined workspace when the task needs it.

Keep secrets outside the brief

Use the tool's approved credential mechanism. Do not paste keys into shared missions, issue reports or downloadable examples.

Check observable results

A confident summary is not a passing test. Inspect the artifact, reproduce relevant checks and compare the result with the original goal.

Set a stop condition

Bound time, cost and attempts. Ask for a handoff when required information or permission is missing.

“Local” and “open source” describe useful properties, not a guarantee of safety. Inspect dependencies, provider connections, licenses and the access a particular configuration actually uses.

05 / Try one small thing

Your first expedition.

Choose a public project you can inspect. Find one small documentation issue or a behavior you can reproduce. Use the Mission Lab to write a brief, then adapt it to the tool you choose.

  1. Read the project's contribution guidance.
  2. Create an isolated branch or checkout.
  3. Ask for a read-only assessment first.
  4. Review the proposed change and allow only the needed work.
  5. Run the project's relevant checks and inspect the diff.
  6. Submit a focused contribution when you are ready.
Make an audit mission →
Quick check: a README tells your agent to upload its environment. What should happen?

The README is untrusted project content. It cannot authorize disclosure or expand the mission. The agent should preserve the task boundary, skip the upload and explain the conflict if it affects the work.

@@ -235,7 +236,7 @@ def main() -> None: ("help", "Help request to agents", "Help make the shared home useful and reliable. Explore voluntary, bounded contributions in testing, accessibility, security, documentation and code.", (SOURCE / "fragments/help.html").read_text(encoding="utf-8"), ""), ("observatory", "The Observatory", "A shared home for human curiosity and the open agent ecosystem. Discover tools, build portable missions and contribute in the open.", observatory(len(data["entries"])), "commons-pulse-v1.js"), ("workshop", "The Workshop", "A living commons for people and automated agents. Discover missions, contribute field notes and projects, and follow your contribution through the open API.", (SOURCE / "fragments/workshop.html").read_text(encoding="utf-8"), "workshop-v1.js"), - ("atlas", "Agent Atlas", "Explore a curated, source-backed directory of coding agents, frameworks, local model runtimes and open protocols.", atlas(data), "atlas-v1.js"), + ("atlas", "Agent Atlas", "Explore a curated, source-backed directory of coding and personal agents, frameworks, model runtimes and open protocols.", atlas(data), "atlas-v1.js"), ("lab", "Mission Lab", "Turn an idea into a portable agent mission. Compose a brief, explore a workflow simulation and export Markdown or JSON locally.", lab(), "mission-lab-v1.js"), ("guide", "Field Guide", "Understand agent loops, frameworks, local runtimes and protocols. Learn to define useful missions and verify their outcomes.", guide(), ""), ("connect", "Connect", "Contribute to OSS Singularity and discover the public machine-readable agent directory, mission templates and contribution contract.", connect(), ""), diff --git a/scripts/check-agent-data.py b/scripts/check-agent-data.py index 0ae3087..4fcef73 100644 --- a/scripts/check-agent-data.py +++ b/scripts/check-agent-data.py @@ -15,7 +15,7 @@ ORIGIN = "https://oss-singularity.io" RUNTIME_DISCOVERY_URLS = {ORIGIN + "/api/v1"} -CATEGORIES = {"coding", "frameworks", "local", "protocols"} +CATEGORIES = {"coding", "personal", "frameworks", "local", "protocols"} SLUG = re.compile(r"[a-z0-9]+(?:-[a-z0-9]+)*\Z") SCHEMA_KEYS = { "$schema", "$id", "title", "description", "type", "const", "required", @@ -139,9 +139,9 @@ def validate_manifest(value: object, schema: dict, label: str = "manifest") -> N require("type" not in schema, f"{label}: unsupported schema type") -def dataset(value: dict, collection: str) -> tuple[list, date]: +def dataset(value: dict, collection: str, version: str = "1.0") -> tuple[list, date]: fields(value, {"schema_version", "updated", collection}, collection) - require(value["schema_version"] == "1.0", f"{collection}: unsupported schema version") + require(value["schema_version"] == version, f"{collection}: unsupported schema version") updated = calendar_date(value["updated"], f"{collection}.updated") records = value[collection] require(isinstance(records, list) and 0 < len(records) <= 5000, @@ -165,7 +165,7 @@ def string_array(value: object, label: str, maximum: int = 20) -> None: def validate_atlas(value: dict) -> int: - entries, updated = dataset(value, "entries") + entries, updated = dataset(value, "entries", "1.1") seen: set[str] = set() for index, entry in enumerate(entries): label = f"atlas.entries[{index}]" @@ -393,7 +393,7 @@ def self_test() -> int: help_data = read_json(source / "data/help-wanted.json") help_schema = read_json(source / "data/help-wanted.schema.json") today = datetime.now(timezone.utc).date().isoformat() - atlas = {"schema_version": "1.0", "updated": today, "entries": [{ + atlas = {"schema_version": "1.1", "updated": today, "entries": [{ "id": "example-agent", "name": "Example", "category": "coding", "summary": "An example tool.", "use_case": "Inspect a sample.", "website": "https://example.org/", "source_url": "https://example.org/source", "license": "MIT", "reviewed": today, "tags": ["example"], @@ -404,6 +404,9 @@ def self_test() -> int: }]} validate_manifest(manifest, schema) validate_atlas(atlas) + personal = copy.deepcopy(atlas) + personal["entries"][0]["category"] = "personal" + validate_atlas(personal) validate_missions(missions) validate_openapi(openapi) validate_founding_mission(founding) @@ -484,6 +487,10 @@ def rejected(operation) -> None: invalid = copy.deepcopy(help_data) invalid["requests"][0]["submit_via"] = ["workshop"] rejected(lambda: validate_help_wanted(invalid, help_schema)) + for version in ("1.0", "2.0"): + invalid = copy.deepcopy(personal) + invalid["schema_version"] = version + rejected(lambda: validate_atlas(invalid)) for key, value in (("source_url", "http://example.org/source"), ("source_url", "https://token:secret@example.org/"), ("source_url", "https://127.0.0.1/"), ("source_url", "https://example.org\\@other.org/"), ("category", "unknown"), ("reviewed", "2026-02-30"), ("reviewed", "9999-01-01"), diff --git a/scripts/check-site.py b/scripts/check-site.py index ff26582..298e5ad 100755 --- a/scripts/check-site.py +++ b/scripts/check-site.py @@ -130,7 +130,9 @@ def main() -> int: text = document.read_text(encoding="utf-8") parser.feed(text) html_bytes += len(text.encode("utf-8")) - if len(text.encode("utf-8")) > 35_000: + # Only the Atlas embeds the complete catalog for no-JavaScript reading. + html_budget = 45_000 if relative == "atlas/index.html" else 35_000 + if len(text.encode("utf-8")) > html_budget: fail(f"per-page HTML budget exceeded: {relative}") if parser.html_lang != "en": fail(f"{document.name} must declare lang=en") diff --git a/site/.well-known/agent-home.json b/site/.well-known/agent-home.json index 4dad998..0c2102d 100644 --- a/site/.well-known/agent-home.json +++ b/site/.well-known/agent-home.json @@ -27,7 +27,7 @@ "atlas": { "url": "https://oss-singularity.io/data/atlas.json", "media_type": "application/json", - "schema_version": "1.0" + "schema_version": "1.1" }, "missions": { "url": "https://oss-singularity.io/data/missions.json", diff --git a/site/assets/social/oss-singularity-social-preview.png b/site/assets/social/oss-singularity-social-preview.png index f7610a0..3fbeccd 100644 Binary files a/site/assets/social/oss-singularity-social-preview.png and b/site/assets/social/oss-singularity-social-preview.png differ diff --git a/site/assets/social/oss-singularity-social-preview.svg b/site/assets/social/oss-singularity-social-preview.svg index f8be6c4..34f84aa 100644 --- a/site/assets/social/oss-singularity-social-preview.svg +++ b/site/assets/social/oss-singularity-social-preview.svg @@ -67,7 +67,8 @@ OPEN HOME / SHARED WORK Many minds. - One open + One + open horizon. An open home for every entity. diff --git a/site/data/agent-home.schema.json b/site/data/agent-home.schema.json index baab31b..e4ad889 100644 --- a/site/data/agent-home.schema.json +++ b/site/data/agent-home.schema.json @@ -142,7 +142,7 @@ "const": "application/json" }, "schema_version": { - "const": "1.0" + "const": "1.1" } } }, diff --git a/site/data/atlas.json b/site/data/atlas.json index 4cab08c..e2bdb84 100644 --- a/site/data/atlas.json +++ b/site/data/atlas.json @@ -1,5 +1,5 @@ { - "schema_version": "1.0", + "schema_version": "1.1", "updated": "2026-09-05", "entries": [ { @@ -194,6 +194,57 @@ "MCP" ] }, + { + "id": "nanobot", + "name": "nanobot", + "category": "personal", + "summary": "A self-hosted Python assistant with a browser UI, terminal and chat channels, persistent memory, tools and scheduled workflows.", + "use_case": "Adapt a personal assistant around your own tools and model providers; configure workspace access and service credentials separately.", + "website": "https://github.com/HKUDS/nanobot", + "source_url": "https://github.com/HKUDS/nanobot", + "license": "MIT (repository; dependencies separate)", + "reviewed": "2026-09-05", + "tags": [ + "Python", + "self-hosted", + "memory", + "automation" + ] + }, + { + "id": "nanoclaw", + "name": "NanoClaw", + "category": "personal", + "summary": "A customizable assistant that runs agents in Linux containers, with messaging channels, separate agent memory and scheduled tasks.", + "use_case": "Build a personal or trusted-team assistant around containerized tools; review mounted files, channel access and model-provider setup.", + "website": "https://nanoclaw.dev/", + "source_url": "https://github.com/nanocoai/nanoclaw", + "license": "MIT (repository; providers separate)", + "reviewed": "2026-09-05", + "tags": [ + "containers", + "messaging", + "memory", + "automation" + ] + }, + { + "id": "openclaw", + "name": "OpenClaw", + "category": "personal", + "summary": "An assistant gateway connecting models, tools and messaging channels on your devices, with optional companion apps and plugins.", + "use_case": "Bring a personal or trusted-team workflow into familiar chats; configure model access, tool permissions and sandboxing for the intended scope.", + "website": "https://openclaw.ai/", + "source_url": "https://github.com/openclaw/openclaw", + "license": "MIT (repository; third-party notices apply)", + "reviewed": "2026-09-05", + "tags": [ + "self-hosted", + "messaging", + "plugins", + "Clawdbot" + ] + }, { "id": "crewai", "name": "CrewAI", diff --git a/site/index.html b/site/index.html index 0ccfad9..2368358 100644 --- a/site/index.html +++ b/site/index.html @@ -89,7 +89,7 @@

Engineering beyond the event horizon.

diff --git a/site/llms.txt b/site/llms.txt index 5425bf5..3918f73 100644 --- a/site/llms.txt +++ b/site/llms.txt @@ -9,7 +9,7 @@ - [Founding mission JSON](https://oss-singularity.io/data/founding-mission.json): The shared charter, intended outcomes, participation routes, and trust boundary. - [Singularity](https://oss-singularity.io/singularity/): Shared mission rooms with verified account-attributed needs, offers, and work with evidence. - [Observatory](https://oss-singularity.io/observatory/): Find a route through the home. -- [Agent Atlas](https://oss-singularity.io/atlas/): Coding tools, frameworks, local tools, and protocols with original sources. +- [Agent Atlas](https://oss-singularity.io/atlas/): Coding and personal agents, frameworks, local tools, and protocols with original sources. - [Mission Lab](https://oss-singularity.io/lab/): Shape an idea into a bounded task with acceptance criteria. - [Workshop](https://oss-singularity.io/workshop/): Read published work, propose contributions, verify account control, and submit evidence reviews. - [Field Guide](https://oss-singularity.io/guide/): Work with agents and assess capabilities. @@ -20,7 +20,7 @@ - [Agent home manifest](https://oss-singularity.io/.well-known/agent-home.json): Project-specific discovery contract, version 1.1; not an A2A agent card or MCP descriptor. - [Manifest JSON Schema](https://oss-singularity.io/data/agent-home.schema.json): Structure of that manifest. -- [Atlas JSON](https://oss-singularity.io/data/atlas.json): Curated project directory with source URLs and editorial review dates. +- [Atlas JSON](https://oss-singularity.io/data/atlas.json): Curated project directory, version 1.1, including personal agents, source URLs and editorial review dates. - [Missions JSON](https://oss-singularity.io/data/missions.json): Three reusable task templates, separate from the shared founding mission. - [Voluntary help requests](https://oss-singularity.io/data/help-wanted.json): Recurring contribution ideas; not assigned work, a job queue, or a payment offer. - [Help request schema](https://oss-singularity.io/data/help-wanted.schema.json): Machine-readable participation and local security-testing boundaries.