chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1 @@
|
||||
sandbox_mode = "workspace-write"
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
name: aholo-docs
|
||||
description: Work on Aholo Viewer documentation and product writing. Use for README, AGENTS.md, docs/architecture.md, docs/ai/vibe-coding-guide.md, manual pages, API documentation flow, bilingual copy, release-readiness notes, and AI collaboration guidance.
|
||||
---
|
||||
|
||||
# Aholo Docs
|
||||
|
||||
Use `docs/ai/vibe-coding-guide.md` as the writing source of truth.
|
||||
|
||||
## Core Rules
|
||||
|
||||
- Product: high-performance 3DGS rendering for web applications.
|
||||
- Audience: frontend engineers, SDK docs readers, product-demo evaluators.
|
||||
- Chinese copy: technical and concise.
|
||||
- English copy: SDK documentation style.
|
||||
- Keep zh-CN and en-US manual pages structurally parallel.
|
||||
- Treat `website/src/content/manual/` as filesystem Markdown content, not an Astro content collection.
|
||||
- Keep manual assets under `website/src/content/manual/assets/` and use local relative image references in manual Markdown.
|
||||
- Use real public renderer exports in docs and examples.
|
||||
- Do not document internal renderer symbols without user direction.
|
||||
|
||||
## Key Files
|
||||
|
||||
- `AGENTS.md`
|
||||
- `README.md`
|
||||
- `docs/architecture.md`
|
||||
- `docs/ai/vibe-coding-guide.md`
|
||||
- `website/src/content/manual/{zh-CN,en-US}/`
|
||||
- `website/src/utils/manual.ts`
|
||||
- `website/src/utils/manual-assets.js`
|
||||
|
||||
## Validate
|
||||
|
||||
Docs-only notes need path/reference scans. Manual or website-imported docs need:
|
||||
|
||||
```bash
|
||||
pnpm.cmd check:website
|
||||
```
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Aholo Docs"
|
||||
short_description: "Docs, copy, manuals, and handoffs."
|
||||
default_prompt: "Use $aholo-docs to update Aholo documentation, bilingual copy, or AI collaboration guidance."
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
name: aholo-examples
|
||||
description: Work on Aholo Viewer example content pairs under website/src/content/examples. Use for creating, modifying, reviewing, or validating example *.json metadata and *.ts runners, Playground presets derived from examples, home-only example runners, config panels, async loading/caching, cleanup, and source shown in Playground.
|
||||
---
|
||||
|
||||
# Aholo Examples
|
||||
|
||||
Own example content.
|
||||
|
||||
## Owns
|
||||
|
||||
- `website/src/content/examples/<slug>.json`
|
||||
- `website/src/content/examples/<slug>.ts`
|
||||
- Content metadata, `RenderRuntime` runner lifecycle, async loading, IndexedDB caching, config panels, and cleanup.
|
||||
- Source code that appears as a Playground preset.
|
||||
|
||||
## References
|
||||
|
||||
- Use `splatting-basic`, `splatting-lod-stream`, `3d-buffer-geometry`, `3d-point-light`, and `home-interaction` as normal references.
|
||||
- Read `website/src/content.config.ts` for examples metadata schema.
|
||||
- Read `website/src/client/render-runtime.d.ts` for runner runtime.
|
||||
- Read `website/src/utils/examples.ts` when changing surfaces, ordering, presets, or default examples.
|
||||
|
||||
## Contracts
|
||||
|
||||
- Keep JSON and TS files paired by the same slug.
|
||||
- Use `surfaces` only when deviating from the default `["examples", "playground"]`; use `["home"]` for home-only runners. Do not repeat surface names.
|
||||
- Keep `order` nonnegative and integral, `tags` nonempty, and `accent` as a six-digit hex color.
|
||||
- Keep Chinese titles technical and concise; keep English titles in SDK documentation style.
|
||||
- Import renderer APIs from `@manycore/aholo-viewer` and use actual public exports.
|
||||
- Export an async default runner that accepts `RenderRuntime`.
|
||||
- Check `signal.aborted` after async work and throw `AbortError` with a specific message.
|
||||
- Use `loading.show()` before async fetch/decode and `loading.hide()` only after the scene is ready.
|
||||
- Return a cleanup function that removes scene objects and destroys created GPU resources.
|
||||
|
||||
## Boundaries
|
||||
|
||||
- Do not change renderer public exports. Surface the need instead.
|
||||
- Do not edit `packages/renderer/dist/` or `website/.generated/api/`.
|
||||
- Use `aholo-site` for examples page chrome, Playground shell, client render runtime, or style work.
|
||||
|
||||
## Validate
|
||||
|
||||
- Metadata-only: `pnpm.cmd check:content`.
|
||||
- Runner or website integration: `pnpm.cmd check:website`.
|
||||
- Renderer API/package interaction: `pnpm.cmd check`.
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Aholo Examples"
|
||||
short_description: "Create and maintain Aholo Viewer examples."
|
||||
default_prompt: "Use $aholo-examples to create, modify, or validate Aholo Viewer website examples."
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
name: aholo-renderer
|
||||
description: Work on the @manycore/aholo-viewer package. Use only when the user explicitly asks for renderer source, package build, public exports, JSDoc/API docs, generated declaration flow, renderer dist, packing, or release validation.
|
||||
---
|
||||
|
||||
# Aholo Renderer
|
||||
|
||||
Work inside `packages/renderer/` and renderer-related scripts.
|
||||
|
||||
## Core Rules
|
||||
|
||||
- Renderer public API exports are user-owned.
|
||||
- Do not change `packages/renderer/src/index.ts` exports unless explicitly asked.
|
||||
- Do not hand-edit `external/egs-core` or `packages/renderer/dist/`.
|
||||
- Do not delete `external/splat-transform`; it is a required workspace package.
|
||||
- Add concise JSDoc only for user-approved public API work.
|
||||
- If public API changes, regenerate docs through normal commands.
|
||||
|
||||
## Validate
|
||||
|
||||
```bash
|
||||
pnpm.cmd check:renderer
|
||||
pnpm.cmd build:renderer
|
||||
```
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Aholo Renderer"
|
||||
short_description: "Renderer package, API, and release flow."
|
||||
default_prompt: "Use $aholo-renderer to work on the renderer package, public API, generated declarations, or release validation."
|
||||
@@ -0,0 +1,41 @@
|
||||
---
|
||||
name: aholo-site
|
||||
description: Work on Aholo Viewer Astro website and Playground surfaces under website/. Use for routes, layouts, components, page chrome, i18n UI copy, scoped CSS, client render runtime, Playground runner, preview canvas, inspector, presets, route-local Monaco, and URL parameters. Use aholo-examples for example content pairs.
|
||||
---
|
||||
|
||||
# Aholo Site
|
||||
|
||||
Own the website shell and Playground integration. Do not own renderer source or example content pairs.
|
||||
|
||||
## Owns
|
||||
|
||||
- Astro routes, layouts, flat feature components, utilities, i18n, and site content under `website/`.
|
||||
- Examples page chrome and preview layout, not `website/src/content/examples/*.json` or `*.ts`.
|
||||
- Client render runtime under `website/src/client/`, camera/control integration, inspector, presets, and URL state.
|
||||
- Playground shell in `website/src/components/PlaygroundShell.astro` and browser entry in `website/src/client/playground.ts`.
|
||||
- Scoped styles: `theme.css`, `global.css`, `site.css`, `home.css`, `examples.css`, `docs.css`, `playground.css`.
|
||||
|
||||
## Boundaries
|
||||
|
||||
- Keep Monaco route-local through `website/src/components/PlaygroundShell.astro`; keep Playground browser entry in `website/src/client/playground.ts`.
|
||||
- Preserve Playground URL params: `example` and `code`.
|
||||
- Keep render runtime implementation in `website/src/client/render-runtime.ts` and runner contract in `website/src/client/render-runtime.d.ts`.
|
||||
- Keep renderer type hints sourced from `packages/renderer/dist/index.d.ts`.
|
||||
- Keep `website/src/content.config.ts` focused on Astro collections; manual pages are loaded through `website/src/utils/manual.ts`.
|
||||
- Keep feature selectors out of `global.css`.
|
||||
- Do not modify renderer public exports.
|
||||
- Do not hand-edit `website/.generated/api/`.
|
||||
- Use `aholo-examples` for example JSON/TS source pairs.
|
||||
|
||||
## Design
|
||||
|
||||
- Keep the site simple, refined, spacious, and tool-like.
|
||||
- Keep homepage first-screen interactive renderer true fullscreen and resize the renderer after entering or exiting.
|
||||
|
||||
## Validate
|
||||
|
||||
```bash
|
||||
pnpm.cmd check:website
|
||||
```
|
||||
|
||||
Use `pnpm.cmd check` when renderer declarations or package output are involved.
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Aholo Site"
|
||||
short_description: "Astro website, docs UI, examples, and Playground."
|
||||
default_prompt: "Use $aholo-site to update Aholo Viewer website routes, styles, examples, docs UI, or Playground behavior."
|
||||
@@ -0,0 +1,35 @@
|
||||
---
|
||||
name: aholo-viewer
|
||||
description: Coordinate Aholo Viewer monorepo work. Use for cross-module tasks, workspace scripts, generated docs/build flow, validation routing, cleanup boundaries, or when work must be routed between examples, site, renderer, docs, and frontend design skills.
|
||||
---
|
||||
|
||||
# Aholo Viewer
|
||||
|
||||
Read `AGENTS.md` first. Use this skill only when the task spans modules or needs repo-level validation/routing.
|
||||
|
||||
## Route
|
||||
|
||||
- `aholo-examples`: example content pairs under `website/src/content/examples/`, including `walk-demo`.
|
||||
- `aholo-site`: Astro website shell, examples page chrome, docs UI, Playground, Monaco, client render runtime.
|
||||
- `aholo-renderer`: renderer package, public API, declarations, build, dist, release checks.
|
||||
- `aholo-docs`: README, AGENTS, architecture notes, manual copy/assets, AI guides, release notes.
|
||||
- `frontend-design`: website visual direction, responsive polish, UI review.
|
||||
|
||||
## Boundaries
|
||||
|
||||
- Keep website work in `website/`, renderer work in `packages/renderer/`, shared automation in `scripts/`.
|
||||
- Keep examples as paired metadata/runners and manual as filesystem Markdown loaded through website utilities.
|
||||
- Do not hand-edit `external/egs-core`, `website/.generated/api/`, or generated `dist/`.
|
||||
- Do not delete `external/splat-transform`.
|
||||
- Do not change renderer public exports unless explicitly asked.
|
||||
|
||||
## Validate
|
||||
|
||||
```bash
|
||||
pnpm.cmd check:website
|
||||
pnpm.cmd check:renderer
|
||||
pnpm.cmd check
|
||||
pnpm.cmd build
|
||||
```
|
||||
|
||||
If esbuild reports `Cannot read directory "../../../.."`, rerun the same command with approved workspace access.
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Aholo Viewer"
|
||||
short_description: "Route repo-level Aholo work and validation."
|
||||
default_prompt: "Use $aholo-viewer to route Aholo monorepo tasks, inspect workspace boundaries, and choose validation commands."
|
||||
@@ -0,0 +1,177 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
@@ -0,0 +1,30 @@
|
||||
---
|
||||
name: frontend-design
|
||||
description: Design and polish Aholo Viewer frontend interfaces with production-grade visual quality. Use for website UI direction, Astro page/component styling, responsive layout, visual refinement, and frontend design reviews in this repository.
|
||||
---
|
||||
|
||||
# Frontend Design
|
||||
|
||||
Use this local skill for Aholo Viewer website and Playground visual design. Keep implementation consistent with the existing Astro site and scoped CSS architecture.
|
||||
|
||||
## Direction
|
||||
|
||||
- Audience: frontend engineers, SDK docs readers, and product-demo evaluators.
|
||||
- Product: high-performance 3DGS rendering for web applications.
|
||||
- Tone: simple, refined, spacious, comfortable, technical, and tool-like.
|
||||
- Avoid generic AI aesthetics, broad marketing visuals, and overdecorated layouts.
|
||||
|
||||
## Rules
|
||||
|
||||
- Respect existing style layers: `theme.css`, `global.css`, `site.css`, `home.css`, `examples.css`, `docs.css`, `playground.css`.
|
||||
- Keep feature-specific selectors out of `global.css`.
|
||||
- Use restrained color, typography, spacing, and motion that fit SDK documentation and technical tooling.
|
||||
- Do not make marketing-style landing sections unless the user explicitly asks.
|
||||
- Ensure text, controls, canvas surfaces, and panels do not overlap on mobile or desktop.
|
||||
- Use icons for compact controls when available, and keep repeated tool UI stable in size.
|
||||
|
||||
## Validate
|
||||
|
||||
```bash
|
||||
pnpm.cmd check:website
|
||||
```
|
||||
@@ -0,0 +1,4 @@
|
||||
interface:
|
||||
display_name: "Frontend Design"
|
||||
short_description: "Aholo website visual direction and UI polish."
|
||||
default_prompt: "Use $frontend-design to refine Aholo Viewer frontend styling, layout, responsive behavior, or visual design quality."
|
||||
Reference in New Issue
Block a user