{
  "markdown": "# Foundational Open Science Skills (FOSS)\n\nA self-paced course that teaches researchers core open-science skills — open\nscience, data management, the command line, LLMs, version control, software\nenvironments, containers, HPC, and CyVerse cloud computing — published by the\n[UNM Center for Advanced Research Computing (CARC)](https://carc.unm.edu) at\n**<https://unm-carc.github.io/foss/>**.\n\nThe course is adapted from [CyVerse](https://cyverse.org)'s\n[Foundational Open Science Skills](https://github.com/CyVerse-learning-materials/foss)\nunder CC BY 4.0. It is built with [Zensical](https://zensical.org), styled\nafter the [CARC documentation](https://carc.unm.edu/docs/), and structured as\nan [Open Knowledge Format (OKF) v0.2](https://github.com/GoogleCloudPlatform/open-knowledge-format)\nknowledge bundle so the content is first-class for both humans and AI agents.\n\n## Quick start\n\n```bash\npython3 -m venv .venv && source .venv/bin/activate\npip install -r requirements.txt   # zensical + pyyaml (Python 3.11+)\nzensical serve                    # live preview at http://localhost:8000\nzensical build --clean            # static site in ./site\n```\n\n## Repository layout\n\n```\n├── zensical.toml              # Site configuration (theme, nav, extensions)\n├── docs/                      # The OKF knowledge bundle + site content\n│   ├── index.md               # Landing page (declares okf_version: \"0.2\")\n│   ├── log.md                 # OKF update log (reserved filename)\n│   ├── course/                # Setup, dated schedule, code of conduct, glossary\n│   ├── lessons/               # Lessons 01–09 plus extras\n│   ├── capstone/              # Capstone project guidance\n│   ├── about/                 # Credits, contributing, guidance for AI agents\n│   ├── assets/                # Images, logos, and the Nextflow tutorial files\n│   ├── stylesheets/extra.css  # UNM cherry + turquoise theme\n│   └── llms.txt, llms-full.txt  # Generated agent indexes (do not edit)\n├── scripts/\n│   ├── okf_validate.py            # OKF v0.2 conformance checker (CI)\n│   ├── check_links.py             # Links, images, and nav coverage (CI)\n│   ├── gen_llms_txt.py            # Builds docs/llms.txt + docs/llms-full.txt\n│   ├── postbuild_agent_surface.py # Markdown mirror, OKF meta tags, robots.txt\n│   └── externalize_links.py       # Adds {target=_blank} to external links\n├── MIGRATION.md               # Old foss.cyverse.org URLs -> new URLs\n├── AGENTS.md / CLAUDE.md      # Rules for coding agents working in this repo\n└── .github/workflows/docs.yml # Validation + GitHub Pages deployment\n```\n\n## Machine readability (OKF)\n\nEvery content page carries YAML frontmatter with:\n\n- `type` — `Lesson`, `Guide`, `Reference`, `Policy`, or `Schedule` (required by OKF)\n- `title`, `description`, `tags` — used by search, indexes, and agents\n- `generated: { by, at }` — who or what produced the current content\n- `sources` — provenance links to the exact upstream CyVerse file and commit,\n  with `last_modified` from git history\n- `status` / `stale_after` — lifecycle markers (the course schedule records a\n  dated offering and carries a `stale_after` date)\n\nPages migrated by an agent are intentionally **unverified** (no `verified`\nkey). When CARC staff review a page, they add:\n\n```yaml\nverified: { by: \"human:<netid>\", at: \"2026-XX-XXT00:00:00Z\" }\n```\n\nThe deployed site is directly consumable by AI agents:\n\n- `/llms.txt` ([convention](https://llmstxt.org)) — linked outline;\n  `/llms-full.txt` — the full corpus with frontmatter in one file.\n- **Markdown mirror**: any page URL + `index.md` returns that page's source\n  with OKF frontmatter (e.g. `/lessons/05-version-control/index.md`).\n- Rendered pages carry `<link rel=\"alternate\" type=\"text/markdown\">` and\n  `okf:*` meta tags; `robots.txt` advertises all of the above.\n  `docs/about/ai-agents.md` is the human- and agent-readable guide.\n\nAfter content changes, regenerate the indexes (CI fails on drift) and check\nthe bundle:\n\n```bash\npython scripts/okf_validate.py docs\npython scripts/check_links.py docs\npython scripts/gen_llms_txt.py\nzensical build --clean && python scripts/postbuild_agent_surface.py site\n```\n\n## Credits\n\nFOSS was created by CyVerse at the University of Arizona. Cite the original\ncourse as:\n\n> Michele Cosi, Jeffrey K. Gillan, Tyson L. Swetnam. (2024, May 2).\n> CyVerse-learning-materials/foss: FOSS 2024 Spring. Zenodo.\n> <https://doi.org/10.5281/zenodo.11105956>\n\nCyVerse is funded by the US National Science Foundation (awards DBI-0735191,\nDBI-1265383, and DBI-1743442). See\n[docs/about/credits.md](docs/about/credits.md) for authors, funding, and the\nlist of changes made in this adaptation. Content is licensed\n[CC BY 4.0](LICENSE).\n\n## Deployment\n\nPushing to `main` on [UNM-CARC/foss](https://github.com/UNM-CARC/foss) runs\nOKF validation and the link check, verifies the llms.txt indexes are current,\nbuilds the site, adds the agent surface, and deploys to GitHub Pages at\n<https://unm-carc.github.io/foss/> via `.github/workflows/docs.yml`. The\nworkflow enables Pages automatically (`configure-pages` with\n`enablement: true`); if the first deploy fails on permissions, set\nSettings → Pages → Source to \"GitHub Actions\" once.\n",
  "bytes": 5195,
  "sha": "2f6ec09cf1c02c8dd4b9b3b2000b44229a175fc9a6494fb3e86d31812f180015",
  "repo_slug": "unm-carc/foss",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/okf_unm_carc_foss_docs_index_md_bdffad9a/readme"
}