Skip to main content

Gather resources for an IETF Working Group for use in NotebookLM

Project description

ietf-notebook

Automate gathering of NotebookLM-ready documents for an IETF Working Group.

This tool gathers Working Group charters, drafts, meeting minutes, PDF slides, meeting transcripts, mailing list archives, and GitHub issues into a set of clean text files and PDFs suitable for ingestion into NotebookLM.

Installation

pipx install ietf-notebook

Usage

ietf-notebook [wg_shortname] _OPTIONS_

Options

  • wg_shortname: IETF Working Group short name (e.g., httpbis).
  • --destination: Folder to save files in (default: current directory).
  • --github: GitHub org/repo for issues (e.g., ietf-wg-httpbis/wg-materials).
  • --github-label: Include only GitHub issues with this label (can be specified multiple times).
  • --exclude-github-label: Exclude GitHub issues with this label (can be specified multiple times).
  • --months: Number of months of mailing list history to fetch (default: all).
  • --create: See "NotebookLM Export" below.
  • --force: Force re-downloading of existing files. By default, the tool skips files that already exist in the destination.
  • --quiet: No messages except for errors and the final resource summary.
  • --verbose: Detailed progress reporting.

Default Behavior

  • Charters, Meetings, and Documents: Existing files are skipped unless --force is used.
  • Mailing List Discovery: The tool automatically finds the mailing list for the WG from the Datatracker.
  • IMAP Retrieval: Mailing list archives are fetched via IMAP from imap.ietf.org and cached locally in ~/.cache/ietf-notebook/{wg_name}/imap-cache/.
  • GitHub Strategy: The tool first checks for archive.json on the gh-pages branch.
  • Transcripts: Meeting transcripts are fetched from the ietf-minutes-data repository and cached locally in ~/.cache/ietf-notebook/{wg_name}/transcript-cache/.
  • GitHub Auth: To avoid rate limits when fetching from the API, set the GITHUB_TOKEN environment variable.
  • NotebookLM Export: Use the --create flag to automatically create a new notebook in NotebookLM Enterprise and upload all generated archives as sources.

NotebookLM Export (Enterprise only)

If you have a Google Workspace Enterprise account with NotebookLM enabled, you can programmatically create a notebook and upload your gathered resources.

ietf-notebook httpbis --create [MY_PROJECT_ID]

Requirements:

  1. Google Cloud Project: You must have a GCP project with the Discovery Engine API enabled.
  2. OAuth Credentials: You need an "OAuth 2.0 Client ID" (Type: Desktop App) from the Google Cloud Console.
  3. Client Secrets: Save the JSON file as client_secrets.json in ~/.config/ietf-notebook/ (or specify its path with --credentials-file).

The first time you run this, a browser window will open to authorize the application. Your access permissions will be cached in ~/.config/ietf-notebook/token.json (or you can specify with --token-file).

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ietf_notebook-0.2.0.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ietf_notebook-0.2.0-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file ietf_notebook-0.2.0.tar.gz.

File metadata

  • Download URL: ietf_notebook-0.2.0.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ietf_notebook-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6845dd6bc6243c5080ca3a56ce2341b507ae38528a08b5a8e1b82c38ea740a6c
MD5 c196cac728dc32ee3fd62c2620f1d591
BLAKE2b-256 b348b466f00f0c7db2283cf678a554c34ea05e6447ecb5a026185c3fe6d34233

See more details on using hashes here.

Provenance

The following attestation bundles were made for ietf_notebook-0.2.0.tar.gz:

Publisher: publish.yml on mnot/ietf-notebook

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ietf_notebook-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ietf_notebook-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ietf_notebook-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fee4ee4ae7489bf69a385336f9fd0c5527a46281b737fd19550cbe5d5cb22d51
MD5 48411040a8a4369e99b07e79714957ad
BLAKE2b-256 06c729b3583ad74e02109877b5244ec0ac45f171b07cd7c4e61df18c1c1a26b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ietf_notebook-0.2.0-py3-none-any.whl:

Publisher: publish.yml on mnot/ietf-notebook

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page