Signals Engine
Python collect CLI for signal-oriented collection lanes.
Install
pip install signals-engine
signals-engine --help
python3.11 -m signals_engine.cli --help
Usage
signals-engine collect --lane x-feed --date 2026-04-06
signals-engine diagnose --lane x-feed
signals-engine collect --lane reddit-watch --date 2026-04-11 --config ~/.signal-engine/config/lanes.yaml
X auth setup
x-feed and x-following now prefer browser-session auth. Start a dedicated Chrome profile with CDP enabled, log into X once in that profile, then point the lane config at the running browser session.
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
--remote-debugging-port=9222 \
--user-data-dir=$HOME/.signal-engine/chrome-profile
lanes:
x-feed:
source:
auth:
mode: browser-session
cdp_url: http://127.0.0.1:9222
target_url: https://x.com
limit: 100
timeout_seconds: 30
x-following:
source:
auth:
mode: browser-session
cdp_url: http://127.0.0.1:9222
limit: 200
timeout_seconds: 30
Legacy cookie-file auth is still supported when explicitly selected:
lanes:
x-feed:
source:
auth:
mode: cookie-file
cookie_file: ~/.signal-engine/x-cookies.json
In browser-session mode, Signal Engine does not export or manage X session cookies. It connects to the live Chrome session over CDP, extracts ct0 from the page context, and performs GraphQL requests inside the browser with credentials: 'include'.
Supported lanes
- x-feed
- x-following
- github-watch
- claude-code-watch
- openclaw-watch
- codex-watch
- reddit-watch
- github-trending-weekly
- product-hunt-watch
- polymarket-watch
Example reddit-watch config
reddit-watch is scoped to AI coding / agent workflow discussions. It is not intended to pull generic Reddit news or broad tech chatter.
lanes:
reddit-watch:
enabled: true
queries:
- Claude Code workflows
- Codex agent
- OpenClaw
- AI coding agents
lookback_days: 30
max_threads: 5
max_per_query: 3
subreddits:
- ClaudeAI
- LocalLLaMA
- PromptEngineering
- artificial
Example polymarket-watch config
polymarket-watch is a Polymarket-backed prediction-market lane scoped to market expectation / probability signals around AI model race, coding AI, benchmarks, and company expectations. It is not a workflow-detail or full-text research lane.
lanes:
polymarket-watch:
source:
max_pages: 2
timeout: 15
max_per_query: 3
queries:
- topic: model-race
query: best AI model
- topic: coding-ai
query: coding AI
- topic: benchmark
query: AI benchmark
- topic: company-expectation
query: OpenAI Anthropic Google
v1 scope
- collect-only runtime
- signal markdown / index / state outputs
- thin run.json manifest
- first migration target: x-feed
Metadata
Release files for signals-engine 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| signals_engine-0.3.0.tar.gz | 77.7 kB | Without provenance | Details for signals_engine-0.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| signals_engine-0.3.0-py3-none-any.whl | Python 3 | none | any | Details for signals_engine-0.3.0-py3-none-any.whl |
Total release size: 159.3 kB
Release files / signals_engine-0.3.0.tar.gz
| Download URL | signals_engine-0.3.0.tar.gz |
|---|---|
| Size | 77.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5996345748eaaaf1d021f4830b192915c506bfd32b0e3bb17cb4499a14e90868
|
|
BLAKE2b-256 checksum How to use checksums |
4d71b8cff5c1b930c282030e0cb3ed443a35ea428634c90721922eb085b32b66
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / signals_engine-0.3.0-py3-none-any.whl
| Download URL | signals_engine-0.3.0-py3-none-any.whl |
|---|---|
| Size | 81.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4b50697d7fec99fc3d794803b5f66886b20e00f1e16330ecff85d8cb4aad6c0f
|
|
BLAKE2b-256 checksum How to use checksums |
f209b750d9d257cc3ac1bcaa3d495e6ce94498faaaa1b24d004caf69dc9f0240
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Security for signals-engine 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.