Agent skill

Organize Library

by pnp in pnp/sharepoint-skills

End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies…

MITAuto-check passedDocuments & Office

Install Organize Library

skills CLI
$ npx skills add pnp/sharepoint-skills --skill organize-library -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pnp/sharepoint-skills organize-library --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pnp/sharepoint-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/Skills/organize-library/organize-library .claude/skills/organize-library && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
organize-library
GitHub stars
132
Token cost
~4k tokens
SKILL.md length
1,896 words
Files
1
Skills in repo
51
Repo updated
First seen
Licence
MIT

At a glance

End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies…

  • Works in 7 steps: Assess the Library → Color Folders → Classify Files & Configure Default View → …
  • The user asks to organize
  • SKILL.md covers Purpose, Design Principle — Incremental…, Brand Colors and Content Type Column Pattern, plus 4 more sections
  • Reaches developer.microsoft.com

What it does

Organize Library is an agent skill from pnp/sharepoint-skills. End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies brand-consistent column and view formatting, builds per-content-type views, colors folders, and creates notification rules for overdue items. Use when the user asks to organize, set up, structure, or transform a document library, or to apply branding and views across content types. Trigger phrases: organize library, organize…

Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Documents & Office, covering Cloud office suites. It works with Microsoft SharePoint. The repository describes itself as: Skills for Copilot in SharePoint. The licence is MIT.

When your agent uses it

  • The user asks to organize
  • Transform a document library
  • Apply branding and views across content types
  • Phrases: organize library

Example prompts

  • “/organize-library”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Assess the Library
  2. Color Folders
  3. Classify Files & Configure Default View
  4. Format Metadata Columns
  5. Create Per-Content-Type Views
  6. Create Notification Rules
  7. Summary Report

What it can do on your machine

Read from SKILL.md and the folder at commit aa9eb14. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • developer.microsoft.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Organize Library loads about 4k tokens when it runs. Until then it costs about 169 tokens; SKILL.md has 1,896 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~169
When it runs · the whole SKILL.md, loaded when a task matches
~4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from pnp/sharepoint-skills at commit aa9eb14, republished under its MIT licence (© pnp). 1,896 words, ~3,980 tokens.

Download SKILL.mdSave it as .claude/skills/organize-library/SKILL.md (or your agent's skills folder).
name
organize-library
description
End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies brand-consistent column and view formatting, builds per-content-type views, colors folders, and creates notification rules for overdue items. Use when the user asks to organize, set up, structure, or transform a document library, or to apply branding and views across content types. Trigger phrases: organize library, organize document library, set up library, structure library, brand library, full library makeover, apply brand to library, organize and format library.

Organize Library

Purpose

Fully organize a SharePoint document library by:

  • Classifying files by content type and extracting metadata
  • Applying brand-consistent column and view formatting
  • Creating filtered views per content type
  • Setting folder colors
  • Creating notification rules for overdue items

Orchestrates the file-classifier skill for classification and reads SHAREPOINT.md for brand guidelines.

Design Principle — Incremental Visual Feedback

Give the user visible progress at each step rather than a long silent period:

  • After Step 2: Colored folders appear
  • After Step 3b: Color-coded classification pills appear
  • After Step 3c: Grouped default view with styled headers
  • After Step 4: Metadata columns formatted with pills, data bars, overdue highlights
  • After Step 5: Per-content-type views appear in the view picker
  • After Step 6: Notification rules active — library is fully operational

Always report progress after each sub-step.

Brand Colors

Always read SHAREPOINT.md before applying any formatting. Resolve all color role names to hex values at runtime. For semi-transparent pill backgrounds, convert hex to rgba() at the specified opacity. Always use 4 parameters — never rgb().

Disambiguation: SHAREPOINT.md defines two Blue-Gray values. "Blue-Gray (Status)" = On Hold (#94A3B8). "Blue-Gray (Muted)" = muted text (#6B7280). Never swap them.

Fallback palette (no SHAREPOINT.md)

If SHAREPOINT.md is not present in the workspace, or if the read fails, do not abort. Tell the user SHAREPOINT.md was not found, that a neutral fallback palette is being used, and that they can re-run after adding a brand file for branded results. Then continue with these hex values mapped to the same role names used elsewhere in this skill:

RoleHex
Primary (Contoso Blue)#0078D4
Deep Navy#1B2A4E
Light Blue (group header bg)#EFF6FC
Medium Purple#7B68EE
Deep Purple (overdue)#5B21B6
Soft Green#22C55E
Blue-Gray (Status / On Hold)#94A3B8
Blue-Gray (Muted text)#6B7280
Default Folder ColordarkBlue
Folder — ContractsdarkPurple
Folder — InvoicesdarkBlue
Folder — Purchase OrdersdarkGreen

Use the fallback values exactly as if they had come from SHAREPOINT.md. All other rules in this skill apply unchanged.

Content Type Column Pattern

Each content type gets exactly 5 metadata columns:

#RoleTypeFormatting
1IdentifierText—
2Key PartyText—
3Critical DateDateTimeOverdue highlighting
4Financial AmountNumberData bars
5StatusTextIcon pills
Column Definitions

Contracts

#ColumnInternalNameTypeDefault
1Contract ID/NumberContractIDText—
2Parties InvolvedPartiesInvolvedText—
3Expiration/End DateExpirationEndDateDateTime—
4Contract ValueContractValueNumber—
5Contract StatusContractStatusTextActive

Invoices

#ColumnInternalNameTypeDefault
1Invoice NumberInvoiceNumberText—
2Vendor/Supplier NameVendorSupplierNameText—
3Payment Due DatePaymentDueDateDateTime—
4Total Amount DueTotalAmountDueNumber—
5Payment StatusPaymentStatusTextOverdue

Purchase Orders

#ColumnInternalNameTypeDefault
1PO NumberPONumberText—
2Vendor/Supplier NameVendorSupplierNameText—
3Required Delivery DateRequiredDeliveryDateDateTime—
4Total Order ValueTotalOrderValueNumber—
5PO StatusPOStatusTextOpen

VendorSupplierName is shared across Invoices and Purchase Orders — create once, reuse.

Workflow

Step 1 — Assess the Library
  • Call get_list_schema to get columns, views, item count, and settings.
  • Call list_items (itemType="folders") and (itemType="files") to inventory the library.
  • Present summary: file count, folder count, existing columns, existing views.
  • Confirm with the user before proceeding.
Step 2 — Color Folders
  • Apply Default Folder Color from SHAREPOINT.md to all folders using set_folder_color. Batch in a single call.
  • If content-type-named folders exist, assign: Contracts → DARK_PURPLE, Invoices → DARK_BLUE, Purchase Orders → DARK_GREEN.
  • Report: "Folders are now color-coded."
Step 3 — Classify Files & Configure Default View
3a — Run file-classifier
  • Load with load_skill(skillName="file-classifier").
  • Follow the full file-classifier workflow: create FileClassification column, read files, classify, create metadata columns, extract values, save with update_list_items_v2.
3b — Format File Classification column

Apply pill formatting to FileClassification using brand colors from SHAREPOINT.md.

Pill structure (use everywhere pills appear):

  • Root div: display: flex; align-items: center; height: 100% — no background.
  • Inner span: display: inline-block; border-radius: 16px; padding: 4px 12px; font-size: 12px; font-weight: 600; white-space: nowrap — carries background and text color.

Color assignment:

Content TypePalette ColorBG OpacityText
ContractsPrimary (Contoso Blue)15%Primary
InvoicesMedium Purple15%Medium Purple
Purchase OrdersSoft Green15%Soft Green (darkened for contrast)
UnclassifiedBlue-Gray (Status)10%Blue-Gray (Status)

Use apply_column_formatting with a conditional JSON formatter checking @currentField against each content type.

Report: Classification results — file counts per type, any unclassified files. User should now see color-coded pills.

3c — Update default view & format group headers
  • Update "All Documents" view with create_or_update_list:
    • viewFields: FileLeafRef, FileClassification, Modified, Editor only. Do not add metadata columns to the default view.
    • Group by FileClassification (Collapse="FALSE"), sort by Modified descending.
  • Apply view formatting with apply_view_formatting (row-formatting schema):
    • Group headers: Deep Navy text on Light Blue background, bold, shows @group.fieldData.displayValue + item count.
    • Rows: clean white, no alternating colors.
    • Schema: https://developer.microsoft.com/json-schemas/sp/v2/row-formatting.schema.json

Report: "Default view is now grouped by classification with styled headers." Confirm with the user before proceeding to metadata formatting.

Step 4 — Format Metadata Columns

Metadata was written in Step 3a. This step applies visual formatting only. Check schema before formatting — only format columns that exist.

Date Columns (ExpirationEndDate, PaymentDueDate, RequiredDeliveryDate)
  • Root div with icon span + text span.
  • Not overdue (@currentField > @now): CalendarDay icon ("Event") in Blue-Gray (Status) + @currentField.displayValue in normal text.
  • Overdue (@currentField <= @now): Pill — Deep Purple background, white text and icon.
    • Warning icon + relative display string: "{N} days ago ({date})" where:
      • N = toString(floor((toNumber(@now) - toNumber(@currentField)) / 86400000))
      • date = @currentField.displayValue
    • Full expression: "=" + toString(floor((toNumber(@now) - toNumber(@currentField)) / 86400000)) + " days ago (" + @currentField.displayValue + ")"
    • 86400000 = milliseconds per day (1000 × 60 × 60 × 24); floor() drops the fractional day so the count is always whole numbers.
    • Example output: ⚠ 79 days ago (January 31, 2026)
Number Columns (ContractValue, TotalAmountDue, TotalOrderValue)
  • Data bar formatting using Primary (Contoso Blue).
  • sp-field-dataBars class with width expression based on field value.
Status Columns (ContractStatus, PaymentStatus, POStatus)
  • Inner-element pill structure (same structure as FileClassification pills above).
  • Icon span (iconName) + text span inside the inner pill span.

Status color mapping:

Status ValuesColor RoleHexIcon
Paid, Active, OpenIn Progress / Active#0078D4CheckMark
Pending, Draft, In ProgressNot Started / Pending#BDD7EE at 40% opacityClock
Completed, Done, Closed, AwardedCompleted / Done#7B68EECompleted
Overdue, Rejected, CancelledOverdue / Blocked#5B21B6Warning
Void, Expired, Terminated, On HoldOn Hold#94A3B8Blocked

Pill background: status color at 15% opacity (40% for Pending). Text: full status color hex. Exception: Pending uses a darker shade of #BDD7EE for text contrast.

Report: "Formatted X date columns with overdue highlighting, X status columns with icon pills, X number columns with data bars."

Step 5 — Create Per-Content-Type Views

For each content type detected, create one view with create_or_update_list:

  • View name: content type name ("Contracts", "Invoices", "Purchase Orders").
  • viewFields: FileLeafRef, FileClassification, the 5 metadata columns for that type, Modified, Editor.
  • CAML Where filter: <Where><Eq><FieldRef Name='FileClassification'/><Value Type='Choice'>[ContentTypeName]</Value></Eq></Where>
  • Sort by the Critical Date column (col 3) ascending, then Modified descending.
  • isNewView: true.

Batch views in groups of 5 or fewer per call.

Report: "Created X views — one per content type. Switch between them in the view picker."

Show full SKILL.md (775 more words)Show less
Step 6 — Create Notification Rules

Create an automated notification rule for each status column so that documents flagged as overdue trigger a reviewer alert.

  • Ask the user for the reviewer's name or email before creating rules.
  • For each status column present (PaymentStatus, POStatus, ContractStatus), create a rule using create_list_rule (or the available rule-creation tool):
    • Trigger: column value changes to "Overdue"
    • Action: Send email notification to the configured reviewer
    • Message: Include the document name, status column name, the relevant date column value (due date or expiration date), and the financial amount column value
  • Create one rule per status column — do not merge into a single rule.
If create_list_rule is unavailable or fails

The rule-creation tool may not be present in every tenant, may fail per-rule due to permissions, or may return an error mid-batch. Do not abort the run — the rest of the organization work is already valuable on its own.

  • If the tool is not available at all: skip rule creation, tell the user explicitly ("automated notification rules are not available in this tenant — the rest of the library is fully organized"), and provide a one-paragraph manual fallback: open the library → Automate → Rules → Create a rule → "A column changes" → select the status column → set to Overdue → notify the reviewer. List each status column that would have had a rule.
  • If one or more rules fail to create: continue with the rest. Record the failure (column name + error message) and surface it in the Step 7 Summary Report under a "Rules that need attention" row. Never silently drop a rule.
  • One retry, then move on. Transient failures get exactly one retry per rule.

Talking point for demo: This rule fires automatically as documents are uploaded or status changes — no manual monitoring required. The metadata we extracted is what makes the rule possible: without structured columns, there's nothing to trigger on.

Report: "Created X notification rules — one per status column. [Reviewer] will be notified when any document is flagged Overdue." Confirm with the user before proceeding to the summary.

Step 7 — Summary Report
CategoryDetails
Files classifiedX files → Y content types
Columns createdList of new columns
Columns reusedList of existing columns kept
Views createdList of views
Formatting appliedX columns formatted, X views formatted
Folder colorsX folders colored
Notification rulesX rules created, reviewer: [name/email]

Offer next steps:

  • "Would you like to refine any views or formatting?"
  • "Want to add more files and classify them?"
  • "Need to adjust the reviewer for notification rules?"

Key Principles

  • Always read SHAREPOINT.md for brand guidelines before formatting.
  • Always load file-classifier — don't duplicate its logic.
  • Incremental visual feedback — apply and report after each sub-step.
  • Idempotent — safe to re-run. Check for existing columns, views, and rules.
  • Schema-first — always check before creating or formatting.
  • Batch operations where possible.
  • Confirm with user before bulk operations and before creating notification rules.
  • Never fabricate data.

Constraints

  • Only use content type names from the file-classifier valid list.
  • Only format columns that exist in the library schema.
  • Never create duplicate columns — check internal name first.
  • rgba() must always have 4 parameters.
  • Do not add metadata columns to the All Documents default view — only FileLeafRef, FileClassification, Modified, Editor.
  • Per-content-type views must include a CAML Where filter on FileClassification.
  • Per-content-type views carry the 5 metadata columns for that type plus FileLeafRef, FileClassification, Modified, Editor.
  • Process files in batches (20 items per update call, 100 files per search).
  • Never auto-navigate the user.

Example

User: "Organize this document library"

  • Step 1: Schema check — 12 files, no custom columns, no folders. Confirm: "I found 12 files across invoices, purchase orders, and agreements. I'll classify files, create metadata, apply formatting, create views, and set up notification rules. Ready to proceed?"
  • Step 2: No folders — skip. Report: "No folders to color."
  • Step 3a: Load file-classifier. Classify 12 files: 4 Invoices, 3 Purchase Orders, 5 Contracts. Create 14 columns (VendorSupplierName created once, reused). Write classification + metadata for all 12 files.
  • Step 3b: Format FileClassification with color-coded pills. Report: "Classification pills are now visible — 5 Contracts (blue), 4 Invoices (purple), 3 Purchase Orders (green)."
  • Step 3c: Update default view — grouped by classification, styled group headers. Report: "Default view is now grouped with styled headers." Confirm before continuing.
  • Step 4: Format 3 date columns (overdue highlighting), 3 status columns (icon pills), 3 number columns (data bars). Report: "Formatted 9 metadata columns."
  • Step 5: Create 3 views: Contracts, Invoices, Purchase Orders — each with CAML filter and 5 type-specific columns. Report: "Created 3 views."
  • Step 6: Ask for reviewer email. Create 3 notification rules (PaymentStatus, POStatus, ContractStatus) — each triggers on "Overdue", notifies reviewer. Report: "Created 3 notification rules."
  • Step 7: Summary report and offer next steps.

© pnp, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in Skills/organize-library/organize-library of pnp/sharepoint-skills.

Open the folder on GitHubat commit aa9eb14

Compare with similar skills

Organize Library next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Organize Library compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Organize Library this skillpnp/sharepoint-skills132—~4kAutomated safety check: PassMIT
Colleague DistillationZhixiangLuo/10xProductivity478—~2.1kAutomated safety check: NotesMIT
Msgraphcodemie-ai/codemie-code294—~4.1kAutomated safety check: PassApache-2.0
aai-cli Microsoft 365aai-labs/agent-barn109—~1.2kAutomated safety check: PassApache-2.0
Workiqmicrosoft/work-iq1k—~15kAutomated safety check: PassCustom licence
Workiq Previewmicrosoft/work-iq1k—~3.3kAutomated safety check: PassCustom licence

Similar skills

  • Colleague Distillation

    ZhixiangLuo/10xProductivity

    Distill a colleague into a reusable AI skill (work + persona) using tool connections — Slack, Slack AI, Jira, GHE, Bitbucket, Confluence, SharePoint, Teams, Outlook, Notion, Linear, Google Docs, and…

    478 GitHub stars~2.1k tokensUpdated 2 mo ago
    Documents & OfficeAuto-check: notes
  • Msgraph

    codemie-ai/codemie-code

    Work with Microsoft 365 services via the Graph API — emails, calendar events, SharePoint sites (read and write), Teams chats and channel messages, OneDrive files, OneNote notebooks, Planner task…

    294 GitHub stars~4.1k tokensUpdated yesterday
    Documents & OfficeAuto-check passed
  • aai-cli Microsoft 365

    aai-labs/agent-barn

    Guides work with Outlook, OneDrive, SharePoint, Teams, Excel, To Do and Planner through aai-cli's Microsoft Graph commands, starting from which service owns the data.

    109 GitHub stars~1.2k tokensUpdated today
    Documents & OfficeAuto-check passed
  • Workiq

    microsoft/work-iq

    Official

    WorkIQ tools for Microsoft 365 workplace data and actions. An agent skill from microsoft/work-iq.

    1k GitHub stars~15k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Workiq Preview

    microsoft/work-iq

    Official

    WorkIQ tools for Microsoft 365 workplace data and actions. An agent skill from microsoft/work-iq.

    1k GitHub stars~3.3k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Hunt Ntlm Info

    sickn33/agentic-awesome-skills

    Hunt NTLM/Negotiate information disclosure on internet-reachable IIS/SharePoint/Exchange.

    47k GitHub starsUsed in 1 repo~4.7k tokens
    Documents & OfficeAuto-check passed

More from pnp/sharepoint-skills

All 51 skills in this repo
  • Scorecard Matrix

    pnp/sharepoint-skills

    Generates a polished, self-contained HTML heatmap scorecard — a weighted comparison matrix where entities (rows) are scored across dimensions (columns), with computed totals, rank badges, and a…

    132 GitHub stars~1.9k tokensUpdated 3 days ago
    Auto-check passed
  • Analyze Document Library

    pnp/sharepoint-skills

    Analyze the current SharePoint document library in read-only mode and produce a structured summary of files, folders, file types, recent activity, naming issues, and organization recommendations.

    132 GitHub stars~899 tokensUpdated 3 days ago
    Auto-check passed
  • Broken Link Auditor

    pnp/sharepoint-skills

    Audits SharePoint pages, news posts, and hyperlink fields for broken or risky links and saves a self-contained HTML link-health report to the site.

    132 GitHub stars~2.5k tokensUpdated 3 days ago
    Auto-check passed
  • Custom Image Tagger

    pnp/sharepoint-skills

    Analyze selected construction images, create missing object metadata columns, and write concise visual metadata back to SharePoint columns using explicit image-analysis, list-schema, list-update…

    132 GitHub stars~1.2k tokensUpdated 3 days ago
    Auto-check passed
  • Dossier

    pnp/sharepoint-skills

    Renders a polished, self-contained HTML briefing from any data source — SharePoint lists, uploaded documents, or a verbal description.

    132 GitHub stars~1.9k tokensUpdated 3 days ago
    Auto-check passed
  • Exec Report

    pnp/sharepoint-skills

    Generates a polished, self-contained HTML executive report or dashboard from any data source — SharePoint lists, CSV exports, or a user description.

    132 GitHub stars~2k tokensUpdated 3 days ago
    Auto-check passed

Questions about Organize Library

What does Organize Library do?

End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies…. Organize Library is an agent skill from pnp/sharepoint-skills. End-to-end orchestrator that fully organizes a SharePoint document library — classifies files by content type (via the file-classifier skill), creates and extracts metadata columns, applies brand-consistent column and view formatting, builds per-content-type views, colors folders, and creates notification rules for overdue items.

When should I use Organize Library?

Organize Library fits situations like: the user asks to organize; transform a document library; apply branding and views across content types; phrases: organize library.

How do I install Organize Library in Claude Code?

Run `npx skills add pnp/sharepoint-skills --skill organize-library -a claude-code`. Or copy the skill folder (Skills/organize-library/organize-library in pnp/sharepoint-skills) into .claude/skills/organize-library in your project. Claude Code loads it when a task matches its description.

How do I install Organize Library in Codex?

Run `npx skills add pnp/sharepoint-skills --skill organize-library -a codex`. Or copy the skill folder (Skills/organize-library/organize-library in pnp/sharepoint-skills) into .agents/skills/organize-library in your project. Codex loads it when a task matches its description.

Can I use Organize Library in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pnp/sharepoint-skills --skill organize-library -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/organize-library, .gemini/skills/organize-library, .github/skills/organize-library and .opencode/skills/organize-library in your project.

What does Organize Library need to run?

SKILL.md names no scripts, command-line tools or credentials: Organize Library is instructions for the agent only.

Does Organize Library access the network?

SKILL.md names 1 domain. In commands or code: developer.microsoft.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Organize Library safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Organize Library use?

Organize Library is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Organize Library use?

About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Organize Library?

Skills that share tags, products or a category with Organize Library: Colleague Distillation (ZhixiangLuo/10xProductivity, 478 stars), Msgraph (codemie-ai/codemie-code, 294 stars), aai-cli Microsoft 365 (aai-labs/agent-barn, 109 stars) and Workiq (microsoft/work-iq, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Organize Library?

pnp (a GitHub organization) maintains it in pnp/sharepoint-skills, which has 132 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on October 6, 2026.

Source: pnp/sharepoint-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.