[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6WZCSEJSXM9EHV9GXCQF9ES":3,"skill-same:01M6WZCSEJSXM9EHV9GXCQF9ES":83},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":62,"commitSha":63,"skillDirectory":64,"forksCount":14,"repositoryHtmlUrl":65,"repositoryHomepageUrl":66,"ownerHtmlUrl":67,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":68,"install":69,"resources":82},"01M6WZCSEJSXM9EHV9GXCQF9ES","pptx-authoring",null,"Creating PowerPoint presentations programmatically with python-pptx — slides, layouts, text boxes, charts, tables, and images. Use when generating slide decks, briefings, reports, or presentations from data or templates.","projectious-work\u002Fprocesskit","projectious-work","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F263889726?v=4","01M6N97TJJ118WQ35CHRV8RD0E","projectious.work","01M6N97TPWJPF0BMKYQ4PBY5W8",0,"MIT","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Farchive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.18.1\u002Fcontext\u002Fskills\u002Fdocuments\u002Fpptx-authoring\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"pptx authoring","authoring","pptx","reports","when","briefings","v1","with","slide decks","python-pptx","images","use","work","text","slides","Charts","templates","presentations","documents","python","2026-11-10 10:12:30",false,"---\nname: pptx-authoring\ndescription: |\n  Creating PowerPoint presentations programmatically with python-pptx — slides, layouts, text boxes, charts, tables, and images. Use when generating slide decks, briefings, reports, or presentations from data or templates.\nmetadata:\n  processkit:\n    apiVersion: processkit.projectious.work\u002Fv1\n    id: SKILL-pptx-authoring\n    version: \"1.0.0\"\n    created: 2026-04-08T00:00:00Z\n    category: documents\n    layer: 2\n---\n\n# PPTX Authoring\n\n## Intro\n\nUse `python-pptx` to generate PowerPoint files programmatically.\nAlways start from a template PPTX to inherit brand fonts, colors, and\nslide layouts. One idea per slide — each slide should have a single,\nclear takeaway expressed in the title. Use charts for quantitative\ndata and images for visual evidence; avoid bullet-heavy text slides.\n\n## Overview\n\n### Setup\n\n```python\n# \u002F\u002F\u002F script\n# dependencies = [\"python-pptx\"]\n# \u002F\u002F\u002F\nfrom pptx import Presentation\nfrom pptx.util import Inches, Pt, Emu\nfrom pptx.dml.color import RGBColor\nfrom pptx.enum.text import PP_ALIGN\n\nprs = Presentation()                          # blank (10×7.5 in widescreen)\nprs = Presentation(\"brand_template.pptx\")    # or from a template\n```\n\nInstall with `uv add python-pptx` or `pip install python-pptx`.\n\n### Slide layouts\n\nEvery presentation has a slide master with named layouts. List\navailable layouts before picking one:\n\n```python\nfor i, layout in enumerate(prs.slide_layouts):\n    print(i, layout.name)\n# Common: 0=Title Slide, 1=Title and Content, 2=Title Only,\n#         5=Blank, 6=Content with Caption\n```\n\nAdd a slide and populate its placeholders:\n\n```python\nlayout = prs.slide_layouts[1]   # \"Title and Content\"\nslide = prs.slides.add_slide(layout)\n\ntitle = slide.shapes.title\ntitle.text = \"Slide Title — the Takeaway\"\n\nbody = slide.placeholders[1]\ntf = body.text_frame\ntf.text = \"First bullet\"\ntf.add_paragraph().text = \"Second bullet\"\n```\n\nPlaceholder indices vary by template. Inspect with:\n```python\nfor ph in slide.placeholders:\n    print(ph.placeholder_format.idx, ph.name)\n```\n\n### Text boxes and formatting\n\n```python\nfrom pptx.util import Inches, Pt\ntxBox = slide.shapes.add_textbox(Inches(1), Inches(1.5), Inches(8), Inches(1))\ntf = txBox.text_frame\ntf.word_wrap = True\n\np = tf.paragraphs[0]\np.text = \"Label\"\np.font.size = Pt(18)\np.font.bold = True\np.font.color.rgb = RGBColor(0x1F, 0x49, 0x7D)\np.alignment = PP_ALIGN.LEFT\n```\n\n### Charts\n\n```python\nfrom pptx.chart.data import ChartData\nfrom pptx.enum.chart import XL_CHART_TYPE\n\nchart_data = ChartData()\nchart_data.categories = [\"Q1\", \"Q2\", \"Q3\", \"Q4\"]\nchart_data.add_series(\"Revenue\", (1.2, 1.5, 1.8, 2.1))\n\nx, y, cx, cy = Inches(1), Inches(2), Inches(8), Inches(4)\nchart = slide.shapes.add_chart(\n    XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, cx, cy, chart_data\n).chart\n\nchart.has_legend = True\nchart.has_title = True\nchart.chart_title.text_frame.text = \"Quarterly Revenue ($M)\"\n```\n\nCommon chart types: `COLUMN_CLUSTERED`, `BAR_CLUSTERED`, `LINE`,\n`PIE`, `AREA`, `XY_SCATTER`. Prefer column\u002Fbar for comparisons, line\nfor trends, and scatter for correlations.\n\n### Tables\n\n```python\nrows, cols = 3, 3\ntable = slide.shapes.add_table(rows, cols, Inches(1), Inches(2),\n                                Inches(8), Inches(2)).table\n\ntable.cell(0, 0).text = \"Metric\"\ntable.cell(0, 1).text = \"Value\"\ntable.cell(0, 2).text = \"Change\"\n\n# Column widths\ntable.columns[0].width = Inches(3)\ntable.columns[1].width = Inches(2.5)\ntable.columns[2].width = Inches(2.5)\n```\n\n### Images\n\n```python\nslide.shapes.add_picture(\"screenshot.png\", Inches(1), Inches(2),\n                          width=Inches(4))\n\n# From BytesIO (no disk write)\nfrom io import BytesIO\nslide.shapes.add_picture(image_stream, left, top, width=Inches(4))\n```\n\n### Saving\n\n```python\nprs.save(\"deck.pptx\")\n\n# To BytesIO\nbuf = BytesIO()\nprs.save(buf)\nbuf.seek(0)\n```\n\n### Slide design principles\n\n- **One takeaway per slide.** The title states the insight; the body\n  provides evidence. Avoid \"Section 3\" or \"Data\" as slide titles.\n- **5×5 rule.** At most 5 bullets, at most 5 words each. Prefer one\n  key data point over three mediocre ones.\n- **Slide count.** Aim for 1 slide per minute of talk time; executive\n  briefings: 10-15 slides maximum.\n- **Sequence.** Title → Problem\u002FContext → Key Data → Insight →\n  Recommendation → Next Steps. Each slide answers one question the\n  previous raised.\n- **Consistent layout.** Use slide layouts from the template — do not\n  position elements by eye. Grid-aligned elements look professional;\n  manually-placed text boxes drift.\n\n## Gotchas\n\nAgent-specific failure modes — provider-neutral pause-and-self-check items:\n\n- **Starting from a blank `Presentation()` instead of a brand template.** A blank deck uses python-pptx's default fonts and a white background. Corporate and client decks must open from the organization's template PPTX to inherit brand colors, fonts, and slide layouts. Always use `Presentation(\"template.pptx\")` when the output will be shared.\n- **Using placeholder index 1 without verifying the layout.** Placeholder indices vary by slide layout and template. Hardcoding `slide.placeholders[1]` for the body works on the default \"Title and Content\" layout but fails silently on others, placing text in the wrong element or raising an `IndexError`. Always inspect `ph.placeholder_format.idx` and `ph.name` for the target layout.\n- **Putting the same text in every slide title.** Titles like \"Data\", \"Results\", or \"Analysis\" describe the format, not the insight. Slide titles should state the takeaway so an executive reading only the titles can follow the narrative. Rewrite generic titles as findings.\n- **Adding text boxes instead of using layout placeholders.** Manually positioned text boxes do not respect the template's text styles, and they shift when the file is opened on different screen sizes. Use `slide.placeholders` for content that fits a layout; reserve `add_textbox()` only for truly free-form annotations.\n- **Not setting chart title and axis labels.** A chart without a title and labeled axes forces the reader to infer context from surrounding text. Every chart must have a descriptive `chart_title` and, for all axes with units, an axis title set via `chart.value_axis.axis_title`.\n- **Saving to the same path as the template.** `prs.save(\"brand_template.pptx\")` overwrites the template, making the next generation run produce corrupt output or inherit changes from the previous run. Always save to a distinct output path.\n- **Not opening the generated PPTX in PowerPoint or LibreOffice before delivery.** python-pptx can produce XML that opens without error but renders incorrectly — font fallbacks, missing charts, mispositioned images. Always open the output file visually before sharing it.\n\n## Full reference\n\n### Shape positioning constants\n\nAll positions and sizes in python-pptx are in EMUs (English Metric\nUnits). Helpers: `Inches(n)` = n×914400 EMUs, `Pt(n)` = n×12700 EMUs,\n`Cm(n)` = n×360000 EMUs.\n\nWidescreen (16:9) slide: 12192000 × 6858000 EMU (9.14 × 5.14 in).\nStandard (4:3) slide: 9144000 × 6858000 EMU.\n\n### Custom slide size\n\n```python\nfrom pptx.util import Inches\nprs.slide_width  = Inches(13.33)   # widescreen 16:9\nprs.slide_height = Inches(7.5)\n```\n\n### Speaker notes\n\n```python\nnotes_slide = slide.notes_slide\nnotes_slide.notes_text_frame.text = \"Talking points for this slide...\"\n```\n\n### Duplicate a slide\n\npython-pptx has no built-in slide-copy API. The pattern:\n\n```python\nimport copy\nfrom lxml import etree\n\ntemplate_slide = prs.slides[0]\nxml_str = etree.tostring(template_slide._element)\nnew_el = etree.fromstring(xml_str)\nprs.slides._sldIdLst.append(new_el)\n```\n\n### Animation\n\npython-pptx does not support animation. To add animations, inject\nOOXML directly into the slide's `_element` or use a macro-enabled\nPPTM as the template.\n\n### Conversion to PDF\n\n`libreoffice --headless --convert-to pdf deck.pptx`\n\nOr use the Google Slides API to import and export as PDF.\n","# PPTX Authoring\n\n## Intro\n\nUse `python-pptx` to generate PowerPoint files programmatically.\nAlways start from a template PPTX to inherit brand fonts, colors, and\nslide layouts. One idea per slide — each slide should have a single,\nclear takeaway expressed in the title. Use charts for quantitative\ndata and images for visual evidence; avoid bullet-heavy text slides.\n\n## Overview\n\n### Setup\n\n```python\n# \u002F\u002F\u002F script\n# dependencies = [\"python-pptx\"]\n# \u002F\u002F\u002F\nfrom pptx import Presentation\nfrom pptx.util import Inches, Pt, Emu\nfrom pptx.dml.color import RGBColor\nfrom pptx.enum.text import PP_ALIGN\n\nprs = Presentation()                          # blank (10×7.5 in widescreen)\nprs = Presentation(\"brand_template.pptx\")    # or from a template\n```\n\nInstall with `uv add python-pptx` or `pip install python-pptx`.\n\n### Slide layouts\n\nEvery presentation has a slide master with named layouts. List\navailable layouts before picking one:\n\n```python\nfor i, layout in enumerate(prs.slide_layouts):\n    print(i, layout.name)\n# Common: 0=Title Slide, 1=Title and Content, 2=Title Only,\n#         5=Blank, 6=Content with Caption\n```\n\nAdd a slide and populate its placeholders:\n\n```python\nlayout = prs.slide_layouts[1]   # \"Title and Content\"\nslide = prs.slides.add_slide(layout)\n\ntitle = slide.shapes.title\ntitle.text = \"Slide Title — the Takeaway\"\n\nbody = slide.placeholders[1]\ntf = body.text_frame\ntf.text = \"First bullet\"\ntf.add_paragraph().text = \"Second bullet\"\n```\n\nPlaceholder indices vary by template. Inspect with:\n```python\nfor ph in slide.placeholders:\n    print(ph.placeholder_format.idx, ph.name)\n```\n\n### Text boxes and formatting\n\n```python\nfrom pptx.util import Inches, Pt\ntxBox = slide.shapes.add_textbox(Inches(1), Inches(1.5), Inches(8), Inches(1))\ntf = txBox.text_frame\ntf.word_wrap = True\n\np = tf.paragraphs[0]\np.text = \"Label\"\np.font.size = Pt(18)\np.font.bold = True\np.font.color.rgb = RGBColor(0x1F, 0x49, 0x7D)\np.alignment = PP_ALIGN.LEFT\n```\n\n### Charts\n\n```python\nfrom pptx.chart.data import ChartData\nfrom pptx.enum.chart import XL_CHART_TYPE\n\nchart_data = ChartData()\nchart_data.categories = [\"Q1\", \"Q2\", \"Q3\", \"Q4\"]\nchart_data.add_series(\"Revenue\", (1.2, 1.5, 1.8, 2.1))\n\nx, y, cx, cy = Inches(1), Inches(2), Inches(8), Inches(4)\nchart = slide.shapes.add_chart(\n    XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, cx, cy, chart_data\n).chart\n\nchart.has_legend = True\nchart.has_title = True\nchart.chart_title.text_frame.text = \"Quarterly Revenue ($M)\"\n```\n\nCommon chart types: `COLUMN_CLUSTERED`, `BAR_CLUSTERED`, `LINE`,\n`PIE`, `AREA`, `XY_SCATTER`. Prefer column\u002Fbar for comparisons, line\nfor trends, and scatter for correlations.\n\n### Tables\n\n```python\nrows, cols = 3, 3\ntable = slide.shapes.add_table(rows, cols, Inches(1), Inches(2),\n                                Inches(8), Inches(2)).table\n\ntable.cell(0, 0).text = \"Metric\"\ntable.cell(0, 1).text = \"Value\"\ntable.cell(0, 2).text = \"Change\"\n\n# Column widths\ntable.columns[0].width = Inches(3)\ntable.columns[1].width = Inches(2.5)\ntable.columns[2].width = Inches(2.5)\n```\n\n### Images\n\n```python\nslide.shapes.add_picture(\"screenshot.png\", Inches(1), Inches(2),\n                          width=Inches(4))\n\n# From BytesIO (no disk write)\nfrom io import BytesIO\nslide.shapes.add_picture(image_stream, left, top, width=Inches(4))\n```\n\n### Saving\n\n```python\nprs.save(\"deck.pptx\")\n\n# To BytesIO\nbuf = BytesIO()\nprs.save(buf)\nbuf.seek(0)\n```\n\n### Slide design principles\n\n- **One takeaway per slide.** The title states the insight; the body\n  provides evidence. Avoid \"Section 3\" or \"Data\" as slide titles.\n- **5×5 rule.** At most 5 bullets, at most 5 words each. Prefer one\n  key data point over three mediocre ones.\n- **Slide count.** Aim for 1 slide per minute of talk time; executive\n  briefings: 10-15 slides maximum.\n- **Sequence.** Title → Problem\u002FContext → Key Data → Insight →\n  Recommendation → Next Steps. Each slide answers one question the\n  previous raised.\n- **Consistent layout.** Use slide layouts from the template — do not\n  position elements by eye. Grid-aligned elements look professional;\n  manually-placed text boxes drift.\n\n## Gotchas\n\nAgent-specific failure modes — provider-neutral pause-and-self-check items:\n\n- **Starting from a blank `Presentation()` instead of a brand template.** A blank deck uses python-pptx's default fonts and a white background. Corporate and client decks must open from the organization's template PPTX to inherit brand colors, fonts, and slide layouts. Always use `Presentation(\"template.pptx\")` when the output will be shared.\n- **Using placeholder index 1 without verifying the layout.** Placeholder indices vary by slide layout and template. Hardcoding `slide.placeholders[1]` for the body works on the default \"Title and Content\" layout but fails silently on others, placing text in the wrong element or raising an `IndexError`. Always inspect `ph.placeholder_format.idx` and `ph.name` for the target layout.\n- **Putting the same text in every slide title.** Titles like \"Data\", \"Results\", or \"Analysis\" describe the format, not the insight. Slide titles should state the takeaway so an executive reading only the titles can follow the narrative. Rewrite generic titles as findings.\n- **Adding text boxes instead of using layout placeholders.** Manually positioned text boxes do not respect the template's text styles, and they shift when the file is opened on different screen sizes. Use `slide.placeholders` for content that fits a layout; reserve `add_textbox()` only for truly free-form annotations.\n- **Not setting chart title and axis labels.** A chart without a title and labeled axes forces the reader to infer context from surrounding text. Every chart must have a descriptive `chart_title` and, for all axes with units, an axis title set via `chart.value_axis.axis_title`.\n- **Saving to the same path as the template.** `prs.save(\"brand_template.pptx\")` overwrites the template, making the next generation run produce corrupt output or inherit changes from the previous run. Always save to a distinct output path.\n- **Not opening the generated PPTX in PowerPoint or LibreOffice before delivery.** python-pptx can produce XML that opens without error but renders incorrectly — font fallbacks, missing charts, mispositioned images. Always open the output file visually before sharing it.\n\n## Full reference\n\n### Shape positioning constants\n\nAll positions and sizes in python-pptx are in EMUs (English Metric\nUnits). Helpers: `Inches(n)` = n×914400 EMUs, `Pt(n)` = n×12700 EMUs,\n`Cm(n)` = n×360000 EMUs.\n\nWidescreen (16:9) slide: 12192000 × 6858000 EMU (9.14 × 5.14 in).\nStandard (4:3) slide: 9144000 × 6858000 EMU.\n\n### Custom slide size\n\n```python\nfrom pptx.util import Inches\nprs.slide_width  = Inches(13.33)   # widescreen 16:9\nprs.slide_height = Inches(7.5)\n```\n\n### Speaker notes\n\n```python\nnotes_slide = slide.notes_slide\nnotes_slide.notes_text_frame.text = \"Talking points for this slide...\"\n```\n\n### Duplicate a slide\n\npython-pptx has no built-in slide-copy API. The pattern:\n\n```python\nimport copy\nfrom lxml import etree\n\ntemplate_slide = prs.slides[0]\nxml_str = etree.tostring(template_slide._element)\nnew_el = etree.fromstring(xml_str)\nprs.slides._sldIdLst.append(new_el)\n```\n\n### Animation\n\npython-pptx does not support animation. To add animations, inject\nOOXML directly into the slide's `_element` or use a macro-enabled\nPPTM as the template.\n\n### Conversion to PDF\n\n`libreoffice --headless --convert-to pdf deck.pptx`\n\nOr use the Google Slides API to import and export as PDF.\n",{"name":5,"metadata":54,"description":61},{"processkit":55},{"id":56,"layer":57,"created":58,"version":59,"category":47,"apiVersion":60},"SKILL-pptx-authoring",2,1775606400000,"1.0.0","processkit.projectious.work\u002Fv1","Creating PowerPoint presentations programmatically with python-pptx — slides, layouts, text boxes, charts, tables, and images. Use when generating slide decks, briefings, reports, or presentations from data or templates.\n","main","4876a92620ee792aac2ac9a1a806322d8a572367","archive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.18.1\u002Fcontext\u002Fskills\u002Fdocuments\u002Fpptx-authoring","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit","https:\u002F\u002Fprojectious-work.github.io\u002Fprocesskit\u002F","https:\u002F\u002Fgithub.com\u002Fprojectious-work","2026-11-11 23:24:18",{"source":8,"skillName":5,"commands":70,"prompt":80,"zipAvailable":81},[71,74,77],{"tool":72,"command":73},"npx","npx skills add projectious-work\u002Fprocesskit --skill pptx-authoring",{"tool":75,"command":76},"bunx","bunx skills add projectious-work\u002Fprocesskit --skill pptx-authoring",{"tool":78,"command":79},"pnpm","pnpm dlx skills add projectious-work\u002Fprocesskit --skill pptx-authoring","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Farchive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.18.1\u002Fcontext\u002Fskills\u002Fdocuments\u002Fpptx-authoring\u002FSKILL.md",true,[],[84,108,128,149,166,184],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":93,"publishedAt":49},"01M6X5MTC89B4ZGXW3JVSQCPF8","skill-management","Manage Skill package manifests as v1 ontology entities.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fskill-management\u002FSKILL.md",[90],{"categoryNo":91,"categoryName":92,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[94,95,96,97,98,99,41,100,101,102,86,103,104,105,35,106,107],"management","skill management","create","update","package","alpha","list","manage","ontology","get","as","manifests","skill package","transition",{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":112,"categories":113,"keywords":115,"publishedAt":49},"01M6X5MCV74NHW5MEDNHZRF2C8","schema-management","Manage generated processkit schema contracts through deterministic MCP rebuild and inspection workflows.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fschema-management\u002FSKILL.md",[114],{"categoryNo":91,"categoryName":92,"taxonomyType":21,"taxonomyTypeDesc":22},[94,116,117,118,119,120,99,41,121,122,101,123,124,125,103,126,127],"schema","schema management","MCP","workflows","validation","generated","rebuild","contracts","wed","deterministic","contract","mode",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":134,"publishedAt":49},"01M6X5M5G6YJ96AMZGSCZJ1D13","proposition-management","Record claims, risks, beliefs, world facts, WSJF estimates, and assumptions through the Proposition interface.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fproposition-management\u002FSKILL.md",[],[94,135,136,96,97,137,99,41,138,139,140,141,103,142,143,144,145,146,147,148],"proposition","proposition management","index","log","world","record","query","creation","event","interface","updates","facts","claims","WSJF",{"skillNo":150,"name":151,"nameZh":6,"description":152,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":153,"categories":154,"keywords":155,"publishedAt":49},"01M6X5KMQ83QN9M6MPWZM7344F","ontology-management","Manage generated v1 ontology entities that do not require a dedicated domain server.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fontology-management\u002FSKILL.md",[],[94,102,156,96,99,157,158,121,159,138,101,160,161,103,162,163,143,164,35,165],"ontology management","lifecycle","archive","roadmap","do","domain","iteration","keep","measurement","generic",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":172,"publishedAt":49},"01M6X5KCY2DN3SM21RERSFNEBT","okf-compatibility","Import, export, and validate conformant Open Knowledge Format bundles.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fokf-compatibility\u002FSKILL.md",[],[173,174,175,176,99,177,178,179,41,180,181,182,183],"okf","compatibility","okf compatibility","validate","open","knowledge","format","export","bundles","bundle","import",{"skillNo":185,"name":186,"nameZh":6,"description":187,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":188,"categories":189,"keywords":190,"publishedAt":49},"01M6X5JA8S5PNGJVFW4EQY8T83","capability-management","Manage versioned Capability entities and their governed lifecycle.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fcapability-management\u002FSKILL.md",[],[94,191,192,96,97,137,99,157,41,100,138,193,101,140,103,163,143,144,194,107],"capability","capability management","queries","changes"]