Apps: - dwg-rooms: extract room numbers from DWG/DXF - dwg-counting: count symbols in PDF drawings (OpenCV template matching) - contract-check: review PDF contracts against a checklist (Claude vision + Tesseract OCR fallback) - email-drafter: bullet notes → polished Czech/English business emails - invoice-extractor: PDF/image invoice → structured data → Excel - translator: Czech-first translator across 19 languages with tone control - vv-check: find inconsistent unit prices across VV sheets in one workbook - vv-compare: diff original vs new VV files (changes / added / removed) - feature-request: portal users submit ideas + sample files Infrastructure: - LiteLLM gateway with per-app virtual keys + budgets - Langfuse observability - Geist font, shared theme, cross-subdomain back link + theme sync via cookie/URL - Caddy reverse proxy on *.klas.chat
171 lines
3.9 KiB
YAML
171 lines
3.9 KiB
YAML
app:
|
|
description: 'Vlož text dokumentu, získáš stručné shrnutí v 5 bodech.'
|
|
icon: 📄
|
|
icon_background: '#E0F2FE'
|
|
mode: workflow
|
|
name: Shrnutí dokumentu
|
|
use_icon_as_answer_icon: false
|
|
kind: app
|
|
version: 0.4.0
|
|
workflow:
|
|
conversation_variables: []
|
|
environment_variables: []
|
|
features:
|
|
file_upload:
|
|
enabled: false
|
|
opening_statement: ''
|
|
retriever_resource:
|
|
enabled: false
|
|
sensitive_word_avoidance:
|
|
enabled: false
|
|
speech_to_text:
|
|
enabled: false
|
|
suggested_questions: []
|
|
suggested_questions_after_answer:
|
|
enabled: false
|
|
text_to_speech:
|
|
enabled: false
|
|
language: ''
|
|
voice: ''
|
|
graph:
|
|
edges:
|
|
- data:
|
|
isInIteration: false
|
|
isInLoop: false
|
|
sourceType: start
|
|
targetType: llm
|
|
id: start-to-llm
|
|
source: 'start_node'
|
|
sourceHandle: source
|
|
target: 'llm_node'
|
|
targetHandle: target
|
|
type: custom
|
|
zIndex: 0
|
|
- data:
|
|
isInIteration: false
|
|
isInLoop: false
|
|
sourceType: llm
|
|
targetType: end
|
|
id: llm-to-end
|
|
source: 'llm_node'
|
|
sourceHandle: source
|
|
target: 'end_node'
|
|
targetHandle: target
|
|
type: custom
|
|
zIndex: 0
|
|
nodes:
|
|
- data:
|
|
desc: ''
|
|
selected: false
|
|
title: Vstup
|
|
type: start
|
|
variables:
|
|
- label: Text dokumentu
|
|
max_length: 50000
|
|
options: []
|
|
required: true
|
|
type: paragraph
|
|
variable: dokument
|
|
- label: Styl shrnutí
|
|
max_length: 100
|
|
options:
|
|
- Stručné body (do 5)
|
|
- Detailní souhrn (1 odstavec)
|
|
- TL;DR (1 věta)
|
|
required: true
|
|
type: select
|
|
variable: styl
|
|
height: 130
|
|
id: 'start_node'
|
|
position:
|
|
x: 30
|
|
y: 200
|
|
positionAbsolute:
|
|
x: 30
|
|
y: 200
|
|
selected: false
|
|
sourcePosition: right
|
|
targetPosition: left
|
|
type: custom
|
|
width: 244
|
|
- data:
|
|
context:
|
|
enabled: false
|
|
variable_selector: []
|
|
desc: ''
|
|
model:
|
|
completion_params:
|
|
temperature: 0.3
|
|
mode: chat
|
|
name: gpt-5-mini
|
|
provider: langgenius/openai_api_compatible/openai_api_compatible
|
|
prompt_template:
|
|
- id: sys-prompt
|
|
role: system
|
|
text: |-
|
|
Jsi asistent, který vytváří stručná česká shrnutí.
|
|
|
|
Pravidla:
|
|
- Odpovídej VÝHRADNĚ česky.
|
|
- Drž se faktů z poskytnutého textu, nevymýšlej.
|
|
- Zachovej hlavní tezi, klíčová čísla, jména a termíny.
|
|
- Pokud je text příliš krátký na shrnutí, řekni to.
|
|
|
|
Styl výstupu zvolí uživatel — řiď se přesně tím, co vybral.
|
|
- id: user-prompt
|
|
role: user
|
|
text: |-
|
|
Styl: {{#start_node.styl#}}
|
|
|
|
Text k shrnutí:
|
|
---
|
|
{{#start_node.dokument#}}
|
|
---
|
|
selected: false
|
|
title: Shrnutí (LLM)
|
|
type: llm
|
|
variables: []
|
|
vision:
|
|
enabled: false
|
|
height: 130
|
|
id: 'llm_node'
|
|
position:
|
|
x: 350
|
|
y: 200
|
|
positionAbsolute:
|
|
x: 350
|
|
y: 200
|
|
selected: false
|
|
sourcePosition: right
|
|
targetPosition: left
|
|
type: custom
|
|
width: 244
|
|
- data:
|
|
desc: ''
|
|
outputs:
|
|
- value_selector:
|
|
- 'llm_node'
|
|
- text
|
|
value_type: string
|
|
variable: shrnuti
|
|
selected: false
|
|
title: Výstup
|
|
type: end
|
|
height: 90
|
|
id: 'end_node'
|
|
position:
|
|
x: 670
|
|
y: 200
|
|
positionAbsolute:
|
|
x: 670
|
|
y: 200
|
|
selected: false
|
|
sourcePosition: right
|
|
targetPosition: left
|
|
type: custom
|
|
width: 244
|
|
viewport:
|
|
x: 0
|
|
y: 0
|
|
zoom: 0.8
|