AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
腳本、附加元件與伴隨工具,供社群打造的 GL.iNet 路由器使用。此為非官方社群專案,與 GL.iNet 無關聯。
AI 翻譯
Scripts, add-ons and companion tools for GL.iNet routers, built by the community. An unofficial community project, not affiliated with GL.iNet.
開發工具CSS · AstroGitHub @GLiNet-Community-Scripts上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
A small "app store" for the projects in
GLiNet-Community-Scripts:
what each tool does, which routers it supports and how to install it.
A static site built with Astro, deployed to GitHub
Pages at https://gl-i.net.
Unofficial. This is a community project. It is not affiliated with,
endorsed by or operated by GL.iNet.
All text lives in three YAML files. Changing the site never touches HTML.檢視完整 README ↗A small "app store" for the projects in GLiNet-Community-Scripts: what each tool does, which routers it supports and how to install it. A static site built with Astro, deployed to GitHub Pages at https://gl-i.net.
Unofficial. This is a community project. It is not affiliated with, endorsed by or operated by GL.iNet.
nvm use # Node 22
npm install
npm run dev # http://localhost:4321
npm run build # fetches GitHub data, validates content, builds to dist/
All text lives in three YAML files. Changing the site never touches HTML.
content/apps.yaml: one entry per repository
(tagline, description, features, install command, supported models,
caveats). The header of the file documents every field.content/categories.yaml: the sections and
filter chips, in display order.content/site.yaml: hero, disclaimer,
official GL.iNet links, and ignore for repositories that should not
appear.Adding a project: suggestions arrive through the
project form
(.github/ISSUE_TEMPLATE/new-project.yml); its fields map one to one onto
apps.yaml, and the pull request that adds the entry can close the issue. Fork the project into the organization, then append a block to
apps.yaml. Copy the install command verbatim from the project's README;
the install sheet splits long commands into lines on its own, and the copy
button always copies the original one-liner.
Tile icons (see src/lib/icons.ts): router, shield, lock, chip,
signal, route, wave, radar, book, terminal, message,
antenna, usb, toggle, gauge, clock, phone, backup,
dashboard, satellite, monitor, chat, desktop, puzzle, layers,
vlan, speed, key, tailscale, globe, bug.
The build validates everything. Unknown categories, icons or types, duplicate repositories and malformed links fail with a clear message.
scripts/fetch-github.mjs runs before every build. For each repository it
reads the original project (the fork parent, or upstream for mirrored
repositories), because the synced copy in the organization has no stars or
releases of its own:
pushed_at), which drives "Recently updated".It is fail-soft: if the API is unreachable, it falls back to the committed
src/data/github-fallback.json, so builds never break. Refresh that file
now and then by copying a fresh src/data/github.json over it.
The script also lists all public repositories of the organization. Each one
without an apps.yaml entry (and not in ignore) shows up as a warning in
the workflow run, so new projects don't go unnoticed.
GitHub Pages is published by GitHub Actions, there is no gh-pages
branch. .github/workflows/deploy.yml builds and publishes the site on
every push to main, every night at 04:41 UTC and on manual dispatch. .github/workflows/ci.yml runs the same
build on pull requests.
One-time setup:
main. Scheduled runs only
happen on the default branch. If a deploy stops with "not allowed to
deploy to github-pages due to environment protection rules", allow
main under Settings → Environments → github-pages.gl-i.net, then Enforce HTTPS once the certificate is issued.gl-i.net (apex domain):
A → 185.199.108.153, 185.199.109.153, 185.199.110.153,
185.199.111.153AAAA → 2606:50c0:8000::153, 2606:50c0:8001::153,
2606:50c0:8002::153, 2606:50c0:8003::153CNAME www → glinet-community-scripts.github.iogl-i.net for the organization
(Organization settings → Pages → Add a domain) so no other account can
claim it.No cookies, no analytics, no requests to third parties at view time. Fonts
use the system stack and all icons are inline SVG. Should a web font ever
be needed, its woff2 files go into public/fonts/ instead of being
loaded from Google.
public/og.png (1200×630): the Open Graph / X card of the site.social/github-preview.png (1280×640): upload it under Settings →
General → Social preview, so links to this repository get the same card.public/apple-touch-icon.png (180×180) and public/favicon.svg: the
Wi-Fi mark.The three PNGs are rendered from the real content (the tile grid shows the
most-starred apps) by scripts/render-social.mjs. They are committed, not
built. Regenerate them after changing the hero copy, or when the top apps
have shifted:
npm i --no-save playwright && npx playwright install chromium
node scripts/render-social.mjs