Deep Research · 2026-07-03 07:07 HST
Microsoft 365 Collaboration Research

Bots Are Usually File Automation, Not True Office Co-Authors.

A human co-author sits inside Word, Excel, or PowerPoint’s live merge session. A bot like ForgeBot usually reads or downloads a file, edits a separate representation, then uploads or writes back a new version.

Bottom Line

The gap is real

In normal Microsoft 365 automation, an external bot is not a live cursor in the Office co-authoring session. It can be a file processor, a Graph client, an Excel API caller, an Office add-in backend, or a Copilot-integrated agent. Those are useful, but they are not the same as being a native co-author editing the same server-side document surface in real time.

Best Practical Model

Human-in-the-loop AI editing

The safest pattern is: bot suggests or prepares changes, a human reviews, then changes are inserted through Office, an approved add-in, or a controlled upload that checks version and lock state.

Research Question

Can bots join Office co-authoring?

Answer: not generically through Microsoft Graph. Microsoft exposes file APIs, Excel workbook APIs, Office add-in APIs, WOPI for storage providers, and Microsoft 365 Copilot/agent surfaces. It does not expose a general “join this Word/PowerPoint co-authoring session as an arbitrary bot and make live paragraph/slide edits” API.
Capability Matrix

What a bot can actually be

RouteCan edit?Is it a true co-author?What it means in practiceRisk
Microsoft Graph DriveItem file upload/downloadYes, whole fileNoDownload the .docx/.pptx/.xlsx stream, modify with a library, upload/replace content. This is the pattern Adam described.Can collide with active Office locks; may overwrite unless guarded with eTags, versions, and conflict handling.
Microsoft Graph Excel workbook APIsYes, object-level ExcelPartialRead/write worksheets, ranges, tables, charts, and formulas through persistent sessions.Excel-specific; not available for Word/PowerPoint content editing through Graph.
Office.js add-inYes, inside open Office appAdjacentRuns in a user’s Office session and can read/write the open document with that user present.Not an unattended bot in the file; add-in state is per-user and must handle stale data/coauthoring events.
Microsoft 365 Copilot app-native agentsYes, within Microsoft’s product boundaryMicrosoft-nativeCopilot can create and edit files through Office-native capabilities while the user remains in control.Available only through Microsoft’s Copilot stack, admin controls, licensing, tenant policy, and model-provider constraints.
WOPI cloud storage integrationYes, for storage providersEnables co-authoring, not bot editingLets Microsoft 365 for the web edit files stored in a partner storage service. Office for the web manages coauthor sessions.Cloud Storage Partner Program is for storage ISVs, not ordinary Microsoft 365 customers or standalone bots.
Headless browser automation of Word for the webTechnically possibleBad ideaA bot could impersonate a user’s browser interaction and type into Word for the web.Fragile, hard to govern, likely against enterprise reliability/security expectations, and not an API contract.

Why Graph is not enough for Word and PowerPoint

Graph can manage files stored in SharePoint/OneDrive and replace file content, but Microsoft Q&A guidance states there is no Microsoft Graph Word API for editing Word content. For Word and PowerPoint find/replace, Microsoft guidance points developers toward downloading the file stream, using a document-processing library, and uploading it back.

Why Excel is different

Excel has a Microsoft Graph workbook API. A bot can create a persistent session and change workbook objects, and those changes are saved. That makes Excel the closest thing to supported server-side bot editing, but it is still an API session against workbook objects, not a visible co-author cursor in the same way a human editor appears.

Actual Write-Back Flow

The bot workflow today

1

Read

Bot gets the file through Graph, SharePoint, OneDrive sync, or a user upload.

2

Convert

Bot extracts text or unpacks Office Open XML into a workable representation.

3

Edit

Bot proposes changes or modifies a local/in-memory copy.

4

Guard

Bot checks version, eTag, permissions, and lock failure signals before write-back.

5

Upload

Bot uploads a new version, creates a copy, or hands a patch to a human/add-in.

Lock visibility is weak

Microsoft Q&A guidance says Graph respects Office/SharePoint locks and writes can return 423 Locked, but Graph does not expose a documented real-time lock-state endpoint. The common workaround is probe-and-handle failure, not true preflight certainty.

Activity history is incomplete for attribution

Graph item activity and Word/SharePoint version history can be best-effort for concurrent edits. A saved version may show only the user whose token triggered the save, even if several people contributed changes in the same interval.

Office add-ins are not shared bot memory

Excel add-in guidance explicitly warns that workbook content syncs, but JavaScript variables and in-memory add-in state do not. Each coauthor has a separate add-in instance. That matters for any AI add-in design.

WOPI Detail

How Microsoft’s own web co-authoring boundary works

WOPI is the protocol that lets Microsoft 365 for the web access and change files stored in a storage partner’s service. For editing, a WOPI host implements CheckFileInfo, GetFile, PutFile, PutRelativeFile, Lock, Unlock, UnlockAndRelock, and RefreshLock. Microsoft 365 for the web handles live document changes internally and periodically calls PutFile.

Important: WOPI proves that Microsoft has a server-side collaboration protocol, but it is for storage-provider integration with Office for the web. It is not a public bot API for arbitrary assistants to enter SharePoint-hosted Word documents as first-class coauthors.
Internal Finding

ForgeFX automation matches the download/edit/upload model

Local ForgeApps references show SharePoint upload workflows for generated .docx and .xlsx files, including proposal documents and cost tables. The documented semantics are idempotent upload/overwrite by name, not live Office co-authoring participation.

ForgeBot Runtime

This Slack bot is not inside Office

In this Slack thread, ForgeBot can research, draft, create files, publish previews, and potentially use Microsoft Graph if credentials and permissions are available. It is not currently a Word/PowerPoint/Excel co-authoring client with a live cursor in a SharePoint document.

Recommendation

The architecture ForgeFX should use

  1. Do not treat bot uploads as co-authoring. Call them automated file updates or AI-assisted revisions.
  2. Prefer comments, suggested edits, or patch documents when humans are actively editing the same Office file.
  3. For Excel automation, use Graph workbook sessions where possible instead of binary replacement.
  4. For Word/PowerPoint, use a human review step or Office add-in path if changes need to merge naturally into an open document.
  5. For unattended write-back, create a new version or copy by default unless the bot has verified eTag/version state and can tolerate 423 Locked.
  6. If ForgeFX wants first-class AI editing inside Office, evaluate a managed Office add-in or Microsoft 365 Copilot agent path, not raw Graph file replacement.
Sources

External Results

Internal Results