尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A searchable, AI-tagged gallery of every image in the Pluck Google Drive.
tagger/, runs hourly on GitHub Actions): walks the Drive folders, makes a thumbnail of each new or changed image, asks Claude what's in it (shaker, sachet, food, people, flavour, old/new packaging, render vs photo…) and saves the result to Supabase.web/, hosted on Vercel): team members sign in with Google, filter by tag, flavour and type, search, see what's new since their last visit, and fix wrong tags. Fixes are saved for everyone and never overwritten by re-tagging.Nothing is ever written to Drive. The tagger has read-only access.
/folders/.supabase/schema.sql → Run.insert into allowed_emails (email) values ('[email protected]'), ('[email protected]');
-- or everyone with a company address:
insert into allowed_domains (domain) values ('yourcompany.com');
https://<your-project>.supabase.co/auth/v1/callback. Copy the client ID and secret.Put this code in a private repository.
Settings → Secrets and variables → Actions → New repository secret, one for each:
| Secret | Value |
|---|---|
GOOGLE_SERVICE_ACCOUNT_JSON | the entire contents of the JSON key file from step 1 |
DRIVE_FOLDER_IDS | folder ID(s) from step 1, comma-separated |
SUPABASE_URL | Project URL |
SUPABASE_SERVICE_ROLE_KEY | service_role key |
ANTHROPIC_API_KEY | key from step 2 |
Optional Variables (same page, Variables tab): TAG_MODEL (default claude-sonnet-5-5; claude-haiku-5-5 is cheaper) and MAX_IMAGES_PER_RUN (default 400).
Actions → Tag new Drive images → Run workflow with mode count. This is free: it checks access and reports how many images there are.
Optional: run it with mode compare (needs only the Anthropic key, costs under US$1). It tags 50 random images with both Sonnet and Haiku and shows where they disagree, so you can choose a model. Set TAG_MODEL to claude-haiku-5-5 if Haiku is good enough.
Run it again with mode tag. After that it runs by itself every hour. The first backlog is worked through 400 images per run.
SUPABASE_URL and SUPABASE_ANON_KEY (the anon public key). Deploy.https://pluck-image-library.vercel.app). In Supabase → Authentication → URL Configuration, set it as Site URL and add it under Redirect URLs.tagger/config.yaml and raise version by one. Every image is then re-tagged under the new rules, 400 per hourly run (or set the run's limit to do them all at once). This costs about the same as the first full run.config.yaml; flavour_aliases merges other spellings (e.g. "Pure" → Pure Organs).tagger/reference/ and list them under reference_images in config.yaml.tag_error column. Formats Pillow can't read (RAW, PSD) fall back to Drive's own preview.Optional. Uses Amazon Rekognition to label images with named people, e.g. "James".
pluck-faces with the AmazonRekognitionFullAccess policy → Create access key (application running outside AWS).AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY. Optional variable AWS_REGION (default ap-southeast-2, Sydney).tagger/people/ (they should be the largest face in each) and list them under people in tagger/config.yaml.Each image is scanned once (about US$0.001, and the first 1,000 a month are free for an AWS account's first year). Matching only runs when there are new images or new reference photos. Faces are stored in a private Rekognition collection in your AWS account; get the agreement of anyone you add.
To add a person later: add their photos and a people entry, then run rematch mode (no rescanning needed).
Open web/index.html through any static server, without config.js, and it runs in demo mode if web/demo-data.js exists.