[AI file editing] Add Word, PDF, and Excel adapters after PowerPoint/CSV
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 8/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- markdown, python, react
- Área
- backend, documentation, security, web-dev
Línea de trabajo
This is an epic-scale design task spanning the shared AI file-editing framework and three format adapters, so it is not a newcomer starting point. Read the referenced foundations first: functions_document_transform.py, functions_document_transform_docx.py and functions_document_transform_sources.py, plus the generated-artifact authorization services. Done means the Word, PDF and Excel capability matrices are documented and the framework dependencies from #999 and #969 are settled.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Extend the reusable conversation-linked AI file-editing framework with Word (.docx), PDF, and Excel (.xlsx) adapters after the initial PowerPoint (.pptx) and CSV delivery. This is the follow-up format-expansion work, not a duplicate implementation of the framework or the initial adapters.
Related umbrella/design work: #999 and #969. The initial PowerPoint scope includes targeted AI edits to text, tables, images, slides, chart data/style, SmartArt text/structure, and animation type/timing/order; those requirements must not be moved into this follow-up issue.
Priority requested: P1. Owner requested: @paullizer. Estimated roadmap size: XL.
User Value
Users should be able to reopen files generated by SimpleChat or open existing files, select the region they want changed, and describe additions, corrections, rewrites, or removals without recreating the entire file. Additional files selected through # provide explicit reference material. The same interaction and revision history should work across formats.
Proposed Behavior
- Build on the shared backend adapter/session/proposal contracts from #999, with the React v2 editor beside the conversation and an expand-to-fullscreen option. Do not build a second editor framework or add legacy-UI parity in this scope.
- Use open-source dependencies only. Do not require proprietary hosted editors, commercial SDKs, public document viewers, or third-party browser runtime assets.
- Open both authorized generated artifacts and existing uploaded/workspace files. Require original bytes for fidelity-sensitive operations; if only extracted text remains, ask for the original instead of pretending it is editable.
- Bind text, cell, object, and region selections to stable format-specific targets and an exact base revision. Support both selection-scoped requests and explicit whole-document instructions.
- Resolve
#reference files using current authorization and screening. References are read-only inputs unless separately opened as an edit target. - Present proposed edits and warnings for review before applying. Keep immutable source/revision lineage, reject stale proposals, support reversible revisions, and save copies by default. Source overwrite is not part of this follow-up's default workflow.
- Preserve existing approval/publication/download boundaries and validate destination permissions before saving. Reopening an artifact must not bypass any hold, masking, or deleted-source policy.
Word (.docx)
- Reuse the existing native DOCX transformation support where possible rather than rebuilding documents from extracted text.
- Support selected text/paragraph/table edits and whole-document instructions, with explicit handling of styles, images, headers/footers, sections, comments, and tracked changes.
- Establish a documented preservation and unsupported-feature matrix; do not silently flatten unknown Office features.
- Define explicit capabilities for annotations, supported text/object edits, forms, and scanned/OCR documents; distinguish these from reconstruction into a new PDF.
- Decide PDF-specific editing boundaries before implementation. Digital signatures, embedded fonts, fixed layout, OCR errors, and scanned pages require visible warnings or rejection.
- Treat secure redaction as a separate capability requiring removal of underlying content and independent validation, not painting over visible text. Do not label an ordinary visual removal as redaction.
Excel (.xlsx)
- Use sheet/cell/range-aware operations with stable selection mapping, reviewable changes, and lossless value handling.
- Define preservation of formulas, cached values, styles, merged cells, tables, charts, named ranges, and cross-sheet references; document recalculation limits.
- Do not execute macros, external links, or model-generated code. Legacy XLS and macro-enabled XLSM are not silently treated as XLSX.
Future adapter candidates
Maintain an explicit extension backlog for Markdown/text, JSON/XML, images, diagrams, and additional document types without making them implicit acceptance criteria for the first three adapters. Reuse existing image/chart/diagram editing functionality when integrating those formats later.
Acceptance Criteria
- Each of Word, PDF, and Excel has a documented capability/preservation matrix, bounded input limits, and actionable unsupported-file states.
- Both generated and existing files can be opened through the common editor without requiring a separate format-specific workflow.
- Selection-scoped and whole-file AI instructions produce validated, reviewable operations tied to the source revision.
-
#references reach the assistant as authorized evidence/assets and never implicitly become write targets. - Accept/reject, revision history, reopen/resume, undo through a new revision, and save-as-copy work end to end.
- Source and destination authorization, content screening, approval/publication restrictions, concurrent edits, retries, cancellation, and missing originals are tested.
- Exported files reopen in their native applications and preserve supported untargeted content; malformed or unsupported transformations fail without altering the source.
- Word, PDF, and Excel each have functional regression fixtures plus React v2 UI coverage, including keyboard selection, review, errors, and mobile/fullscreen behavior.
- Feature documentation, user guidance, chat controls, and any new settings/inventory coverage are updated with the implementation version.
Notes
Relevant existing foundations include functions_document_transform.py, functions_document_transform_docx.py, functions_document_transform_sources.py, generated-artifact authorization/publication services, and the shared React v2 AssistThread/context-picker components. The existing native Office adapter supports package-preserving transformations, but persistent visual file-edit sessions and a format-independent lifecycle are framework work.
Dependency: the shared framework and initial PPTX/CSV contracts planned under #999/#969. Sequence the adapters incrementally; completion of generation-only or merge-only issues is not evidence that interactive editing is complete. Related generation work includes #1072; template population is separately tracked in #1045.
- Lenguaje dominante
- Python
- Estrellas
- 157
- Forks
- 117
- Merge medio
- 3 h 6 min
- PR fusionados (30 d)
- 219
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/simplechat
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
microsoft/simplechat#1491 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
microsoft/simplechat#1370 ·
Los mantenedores suelen responder en 1 día
-
Fix mixed-source chat excerpt truncation, default system prompt suppression, bracketed citations, and Semantic Ranker quota fallbackPosiblemente ocupada @paullizer la tomó hace 4 días. Abiertobug P1
microsoft/simplechat#1855 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Add support for extracting comments from Word documents (.docx, .docm, .doc, .dotx)Posiblemente ocupada @paullizer la tomó hace 6 días. Abiertoenhancement P2
microsoft/simplechat#1850 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
V2: Preserve explicit reasoning None across existing tool pathsPosiblemente ocupada @paullizer la tomó hace 6 días. Abiertobug P1
microsoft/simplechat#1846 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de microsoft/simplechat
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
huggingface/smolagents#3106 ·
Los mantenedores suelen responder en 2 días
-
area:scripts area:tests bug priority:later
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Ikalus1988/MisakaNet#4358 ·
Los mantenedores suelen responder en 1 día
-
Discovered ports from service discovery are never propagated to modules in Module.load()Posiblemente ocupada @vishalmore90 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
OWASP/Nettacker#1828 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
aws-samples/sample-per-model-bedrock#708 ·
Los mantenedores suelen responder en 1 día
-
maintenance
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100