尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Formerly called two-step. A prototype within peapickers; the repository is called peapickersfeed.
Film, theatre, dance, music, talks and exhibitions in and around Ghent (arthouse cinemas and film clubs such as Sphinx, Studio Skoop, KASKcinema and Ciné Rio), with a Funding article on who paid for each film. Kinepolis is not included.
This repository is the public site. GitHub Pages serves it for free at https://peapickers.github.io/peapickersfeed/:
| File | What it is |
|---|---|
index.html | The interactive page: filter by cinema, start time, kind of film, money type, studio or fund, country |
screenings.json | All listed screenings |
films.json | Film metadata and Funding articles, with sources |
feed.xml | RSS feed, one item per day |
scripts/ | The free Python scripts that build the post, the feed and the film data |
igmcp/ | Files for the Instagram posting server on your Mac |
A GitHub Actions workflow (.github/workflows/update-listings.yml) runs every Wednesday morning, for free and without Claude:
scripts/update_films.py reads the official programme pages of Sphinx, Studio Skoop, KASKcinema and Ciné Rio. It keeps only facts (date, time, title, a short label, the link) and copies no images or descriptions.scripts/update_stage.py does the same for theatre, dance and stage music: NTGent, VIERNULVIER, CAMPO, Kopergietery, Arca, Opera Ballet Vlaanderen (Ghent dates only), De Centrale, Theater Box and amateur theatre within 25 km of Gent (OPENDOEK). Arca and Opera Ballet load their calendars with JavaScript, so a free headless browser (Playwright) reads those two. VIERNULVIER and CAMPO ask for 5 seconds between requests; the script waits.scripts/build_feed.py rebuilds feed.xml.If a venue's page can't be read (for example after a site redesign), its last known listings stay and a notice on the site says so. To run it by hand: Actions → Weekly listings update → Run workflow.
Not automatic: Funding articles (new titles show "Funding: unknown" until a sourced article is added), talks and exhibitions. Those are updated in a Claude session.
Robots.txt of every venue allows these pages (checked 25-10-2026); none of their sites has terms that forbid automated reading.
Everything below is free. Steps 1–2 take about 5 minutes. Steps 3–5 take about 30 minutes, once.
peapickersfeed. Leave it empty: no README, no licence.peapickersfeed, then tell Claude "push the peapickersfeed site". Claude uploads these files.main, folder / (root), then Save. The site is live within a few minutes.Instagram only lets software post to a professional account.
Go to developers.facebook.com, log in with the Facebook account that owns the Page, and Create app. Choose the use case Other, then app type Business.
Add the Instagram product and choose API setup with Facebook login.
Open Tools → Graph API Explorer. Select your app, then Get Token → Get User Access Token with these permissions only:
instagram_basicinstagram_content_publishpages_show_listpages_read_engagementbusiness_managementDon't add messaging permissions. The server is set up to post only.
Make it a 60-day token: open Tools → Access Token Debugger, paste the token, then click Extend Access Token.
Find your Instagram account ID by running this query in Graph API Explorer: me/accounts?fields=instagram_business_account{id,username}. Copy the instagram_business_account.id.
App ID and App Secret are under App settings → Basic.
Keep the token, app secret and account ID on your Mac only. Never paste them into a chat, a repository or a website.
ig-mcp is open source (MIT). Before you install it, I reviewed the code at commit 549fbee:
graph.facebook.com and graph.instagram.com. It also downloads the image you post, to check its shape..env file.add_carousel.py removes it, and your token has no messaging permission either.Install Python 3.12 from python.org (it supports macOS 12). Then run:
cd ~
git clone https://github.com/jlbadano/ig-mcp.git
cd ig-mcp
git checkout 549fbee # the version that was reviewed
curl -fsSLO https://peapickers.github.io/peapickersfeed/igmcp/add_carousel.py
curl -fsSLO https://peapickers.github.io/peapickersfeed/igmcp/run.sh
curl -fsSLO https://peapickers.github.io/peapickersfeed/igmcp/requirements-slim.txt
python3 add_carousel.py # adds publish_carousel, removes send_dm
python3.12 -m venv .venv
.venv/bin/pip install -r requirements-slim.txt
chmod +x run.sh
cp env.example .env && open -e .env # fill in the four values below, save
In .env, fill in:
FACEBOOK_APP_ID=...
FACEBOOK_APP_SECRET=...
INSTAGRAM_ACCESS_TOKEN=... (the 60-day token)
INSTAGRAM_BUSINESS_ACCOUNT_ID=...
Test the setup:
.venv/bin/python scripts/setup.py
igmcp/claude_desktop_config.example.json and replace YOUR-MAC-USERNAME with your username. Run whoami in Terminal if you're not sure.instagram tools appear in chats on this Mac.Then tell Claude whether the morning task should post automatically, or prepare the post and wait for your OK. Automatic posting needs your Mac awake with the Claude app open at 06:51.
The token lasts 60 days. Repeat step 3.4 before it expires and replace the token in .env.
Funding information comes from festival catalogues, film funds and trade press, linked under each film in films.json. ig-mcp © its authors, MIT licence.