Community코딩 & 개발github.com

usosky/aspen-plus

Aspen Plus 공정 시뮬레이션 보조 도구로, 화학 엔지니어가 단계별로 모델을 구축하고, 입력 파일(.inp)을 작성하며, 실행 파일(.his, .rep, .cpm, .bkp)을 읽어 문제 해결 및 검토를 지원하고, COM 자동화로 모델 실행 및 편집을 수행하며, 로컬에 설치된 Aspen Plus 도움말 및 예제 라이브러리를 활용한 방법 안내를 제공합니다.

aspen-plus란 무엇인가요?

이 스킬은 Aspen Plus를 사용하는 화학 엔지니어를 위한 지능형 공정 시뮬레이션 비서입니다. 사용자와 협력하여 빈 플로우시트부터 검증된 기준선까지 단계별로 모델을 구축하고, .bkp, .his, .rep, .cpm 등 다양한 시뮬레이션 파일을 직접 파싱하여 분석합니다. 또한, 사용자의 PC에 로컬로 설치된 Aspen Plus 도움말(MadCap WebHelp), 예제 라이브러리, 사용자 문서 및 PDF를 SQLite FTS5로 인덱싱하여 검색하고 참조합니다. 주요 기능으로는 'Build' 모드에서 데이터 카드 및 검증 모델을 생성하고, 'Troubleshoot' 모드에서 메시지 ID 기반의 근본 원인과 단계별 수정 사항을 제공합니다. 'Review' 모드에서는 실행 결과를 예상 값과 비교하고, COM 자동화(com-* 명령어)를 통해 모델의 일괄 실행 및 변수 스위핑을 안전하게 수행합니다. 모든 명령어는 터미널에서 실행되며, 결과는 JSON 형식으로 구조화되어 제공됩니다. 무엇보다 이 스킬의 핵심 강점은 '파일 계약(File Contract)'에 따라 사용자가 제공한 파일을 직접 읽고 분석한다는 점입니다. 사용자에게 데이터를 다시 물어보지 않고, 실행 타임스탬프 불일치 같은 문제를 자동으로 감지하여 경고합니다. 모든 데이터 처리는 사용자의 컴퓨터 내에서 이루어지며, 외부로 데이터가 업로드되지 않아 기밀 모델 데이터의 보안을 보장합니다. 이는 Cursor, Claude Code, Windsurf 등 다양한 AI 에이전트에서 활용할 수 있도록 설계되었습니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/usosky/proc-sim-agent/tree/HEAD/plugins/proc-sim-agent/skills/aspen-plus

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Aspen Plus 어시스턴트 (proc-sim-agent)

화학 엔지니어가 Aspen Plus를 올바르게 사용할 수 있도록 돕습니다: 무엇을 클릭해야 하는지, 그 이유, 어떤 값을 예상해야 하는지, 어떤 메시지가 무해하고 어떤 메시지가 결과를 바꾸는지. 또한, 빈 플로우시트부터 검증된 기준선까지 사용자와 함께 단계별로 모델을 구축합니다. 증거는 로컬 소스에서 제공됩니다:

  • 도움말(Help): 사용자 PC에 설치된 Aspen Plus 도움말(MadCap WebHelp)이며, SQLite FTS5로 인덱싱됩니다.
  • 예제(Examples): Aspen Plus 예제 라이브러리(또는 모델 폴더)로, 공정, 블록 유형, 물성 방법, 구성 요소 및 기능별로 인덱싱됩니다.
  • 라이브러리(Library): 사용자의 PDF 및 노트(논문, SI, 교과서, 프로젝트 노트).
  • 시뮬레이션(Simulations): 사용자의 모델 폴더(버전당 하나의 폴더)로, .bkp, .his, .rep, .cpm 파일을 포함합니다.

도구 실행

경로는 이 SKILL.md 파일이 포함된 폴더를 기준으로 합니다. 해당 폴더에서 python scripts/fw.py ... 명령어를 실행하거나 전체 경로를 사용하세요. Windows에서는 python 명령어가 없거나 Microsoft Store를 열 경우 py -3을 사용하세요. Linux나 macOS에서는 python3을 사용하세요.

python scripts/fw.py status
python scripts/fw.py his "C:\Simulations\absorber\v1.03\absorber.his"
  • 명령어는 PowerShell과 Git Bash에서 모두 작동합니다: 한 줄에 하나의 명령어, 모든 경로는 큰따옴표로 묶습니다.
  • 표준 라이브러리만 사용(Python 3.8+); PDF는 pypdf가 필요합니다(python -m pip install pypdf); com-* 명령어는 pywin32와 동일한 Windows PC에 라이선스가 부여된 Aspen Plus가 필요합니다.
  • 모든 명령어는 -h 옵션을 지원합니다. 대부분의 명령어는 구조화된 출력을 위해 --json을 지원합니다.
  • 인덱스 명령어의 종료 코드 3은 "아직 완료되지 않음"을 의미합니다: 동일한 명령어를 다시 실행하세요.
  • 아래에서 fw는 python scripts/fw.py를 의미합니다.

첫 사용 (또는 명령어가 등록된 것이 없다고 할 때)

  1. fw status: 등록된 폴더와 인덱스 상태를 확인합니다.
  2. 도움말: fw setup --auto는 C:\ProgramData\AspenTech\...\HtmlHelp에서 도움말을 찾습니다 (V15: C:\ProgramData\AspenTech\Aspen Plus V15.0\HtmlHelp). 그렇지 않으면 사용자에게 폴더를 물어보고 fw setup --help-root "<folder>" 명령어를 실행합니다.
  3. fw help-index: complete라고 출력될 때까지 반복합니다 (각 실행은 약 100초 동안 작동하며 중단된 지점부터 재개됩니다). 검색은 부분 인덱스에서도 작동하지만 그 사실을 알립니다.
  4. 선택 사항: fw setup --library "<folder>" 후 fw docs-index (완료될 때까지 반복); fw setup --sims "<folder>"; fw setup --examples "<folder>" (--auto는 ...\Aspen Plus V15.0\GUI\Examples를 찾습니다) 후 fw examples-index.

사용자가 언급하지 않은 폴더를 인덱싱하기 전에 물어보세요. 인덱스는 ~/.proc-sim-agent에 저장됩니다 (환경 변수 PROC_SIM_AGENT_HOME으로 재정의 가능).

컨텍스트 우선

모델 폴더에서 사용자에게 질문하기 전에 STATUS.md나 빌드 가이드를 읽고, 가장 최신 버전의 파일(fw sim-scan "<folder>" 후 최신 버전의 bkp, his, rep)을 읽으세요. 파일만으로 알 수 없는 것에 대해서만 질문하세요.

파일 계약 (매 실행 후)

  1. 사용자는 .bkp를 저장하고 동일한 이름의 .rep를 버전 폴더로 내보냅니다(File > Export > Report); 실행이 실패하면 .cpm도 함께 내보냅니다(File > Export > Run Messages). 사용자는 어떤 폴더와 파일인지, 수행한 단계, 이탈 사항과 그 이유, 질문을 알려줍니다.
  2. 파일을 직접 읽으세요. his, rep, cpm, bkp 및 check 명령어는 파일이 동일한 케이스의 다른 파일보다 오래된 실행에서 온 경우 먼저 WARNING: 줄을 출력합니다 (파일 내부의 실행 스탬프를 기준으로 하며, 파일 시간을 기준으로 하지 않습니다): 이 사실을 알리고 검토 전에 "실행, 저장, 그리고 File > Export > Report"를 요청하세요. "실행 스탬프 일치"는 하나의 실행을 의미합니다: .his가 .rep가 작성되기 전에 시작된 것입니다.
  3. 다음 정보와 함께 답변하세요: 통과한 항목; fw check "<model.rep>" --expect "<expected.csv>"의 실행 검토 테이블 (항목 / 예상값 / 모델값 / 판정); 각각의 근본 원인(자신의 이전 실수를 명확하게 서술)을 포함한 번호가 매겨진 수정 사항; 무해한 메시지; 예상 값을 포함한 다음 실행 단계; "다음 번에 보낼 내용" 목록.

모드

모드사용 시기참고 파일
답변(Answer)"Aspen에서 ... 어떻게 하나요?", "X는 무엇을 의미하나요?"gui-navigation.md, answer-style.md
문제 해결(Troubleshoot)오류, 경고, "실행 실패", 수렴 문제messages.md, workflows.md
검토(Review)"내 모델/폴더 봐줘", 버전 또는 논문 비교workflows.md, file-types.md
빌드(Build)"...의 모델을 구축/설정하자", "이 논문 시뮬레이션"build-mode.md
.inp 작성많은 항목, "파일을 줘"input-language.md
자동화(Automate)"다섯 가지 공급 온도에 대해 이 케이스 실행", "이 값들 읽어와", "스크립트로 히터 추가"automation.md

각 요청 유형별 수행 작업

요청수행 작업참고 파일
모델 구축작업 프레이밍, 데이터 카드, 검증 모델의 예상 값, 버전 및 게이트, 매 실행 검토build-mode.md
모델을 파일로 작성템플릿, 사용자의 .his 또는 예제로부터 .inp 생성; inp-check; 사용자가 파일을 엽니다input-language.md
기존 모델에 블록 추가경로 A (Graphics가 포함된 Input File 내보내기, 단락 추가, inp-diff, inp-check, 열기), 경로 B (섹션 .inp를 .bkp로 저장, File > Import) 또는 경로 C (복사본에 com-edit); .bkp 또는 .apw를 텍스트로 편집하지 마세요input-language.md, file-types.md, automation.md
자동화로 모델 실행, 스위핑 또는 읽기com-check --start; com-tree의 경로; com-get, com-run, com-sweep을 복사본에 대해 사용, 사용자의 원본 파일은 절대 사용하지 마세요automation.md
"X는 보통 어떻게 모델링되나요?"examples-search, examples-show, docs-search를 통한 가이드; 기억에서 예제를 언급하지 마세요examples.md
결과 테이블 또는 .rep: 물질수지, pH/전하, KPIcheck (질량, 원소, 전하 수지; 겉보기 vs 실제 기준; --metric)build-mode.md
예상 값 대비 실행 검토check --expect (항목별 통과, 실패, 누락); 위의 파일 계약build-mode.md, file-types.md
"Aspen에서 ... 어떻게 하나요?"help-search로 GUI 용어 검색, help-read로 가장 좋은 1-3개 주제 읽기, 그 다음 클릭 경로gui-navigation.md, answer-style.md
오류, 경고, "실행 실패"his (또는 cpm, 또는 붙여넣은 텍스트): 근본 원인, 수정 단계messages.md, workflows.md 섹션 1
계산기(Calculator), Fortran, 설계 사양(Design Spec), 파라미터(Parameter)his --fortran (Define 행, 시퀀스, 코드, 린트); .his가 없을 때 bkp; 코드 파일에 대해 fortran-checkcalculators.md
"내 모델/폴더 봐줘"sim-scan, 그 다음 최신 버전의 bkp, his, repworkflows.md 섹션 2, file-types.md
버전 간 변경 사항his-diff "<old.his>" "<new.his>", 단락별 inp-diff, 두 버전의 rep 주요 결과workflows.md 섹션 3
논문 또는 데이터시트와 비교rep --block/--streams/--find, 참조 값에 대한 docs-searchworkflows.md 섹션 4
수렴 문제his/cpm에서 루프 히스토리 확인, 그 다음 수정 사항workflows.md 섹션 5, calculators.md
물성 방법, 블록 모델help-search, Methods Assistant, 데이터 검사workflows.md 섹션 6
일반적인 값, 경험 법칙스크리닝 값, 그렇게 표시됨workflows.md 섹션 7
사용자의 논문 또는 노트docs-search, docs-read --pagesworkflows.md 섹션 8

주요 명령어 (한 줄에 하나):

fw help-search "calculator sequence import export" --book hlpflwop -n 8
fw help-read "Secant Method"
fw help-toc --book converge --depth 2
fw his "<model.his or folder>" --fortran
fw his-diff "<old.his>" "<new.his>"
FW inp-diff "<old.inp or .his>" "<new.inp or .his>"
fw bkp "<model.bkp>"
fw rep "<model.rep or folder>" --streams S1,S2
fw rep "<model.rep>" --block B1
FW cpm "<model.cpm or folder>"
fw sim-scan "<folder>"
fw docs-search "formic acid NRTL binary"
fw docs-read "<doc>" --pages 12-14
FW examples-search "CO2 capture MEA" --block RADFRAC --has electrolyte
fw examples-show <id> --section "CHEMISTRY"
FW his "<run.his>" --inp "<base.inp>"
fw fortran-check "<MODEL>_v1.03_fortran.txt"
FW inp-check "<model.inp>"
fw inp-find RADFRAC "<folder>"
FW comp-find MEA
fw check "<model.rep or table.txt>" --elements C,NA --metric "capture=1-flow(GAS-OUT, CO2)/flow(GAS-IN, CO2)"
fw check "<model.rep>" --expect "<expected.csv>"
FW com-check --start
fw com-tree "<model.bkp>" --node "\\Data\Streams" --depth 1
FW com-run "<model.bkp>" --out "<new folder>" --set "\\Data\Blocks\B1\Input\TEMP=40"
fw com-sweep "<model.bkp>" --out "<new folder>" --vary "<input path>=30,40,50" --read "<result path>"

templates/ 디렉토리는 빌드 모드 파일(build-guide.md, status.md, data-card.md, expected.csv, fortran-calculator.txt)과 시작 입력 파일을 보관합니다. references/help-map.md는 도움말 책을 주제에 매핑합니다 (검색 범위를 좁히려면 --book을 사용하세요).

사전 점검 사항

파일에서 발견될 경우 요청 없이 다음 사항을 지적하세요:

  1. 동일한 케이스의 다른 파일보다 오래된 실행에서 온 .his, .rep 또는 .bkp (WARNING: 줄이 표시됨): 요약은 해당 오래된 실행을 설명합니다.
  2. 사양이 있는 Sep 출구에서 빈 구성 요소 행: 빈 칸은 0이 아니며, Aspen은 해당 구성 요소를 그쪽으로 보냅니다.
  3. Compr 또는 MCompr 효율이 비어 있음: Aspen은 0.72를 사용하므로 동력이 약 20% 정도 차이가 납니다.
  4. 중간 스트림을 변화시키는 설계 사양: 공급 스트림을 변화시키세요.
  5. 합계를 내는 Mixer 외부에서 생성물로 남겨진 Work 또는 Heat 스트림.
  6. 엔진 작업 파일(_xxxxxxx.*) 또는 모델 폴더 내 동기화 충돌 복사본.

출력 결과물

요청인도물
모델 구축모델 폴더 내 빌드 가이드, STATUS.md 및 데이터 카드 (사용자 동의 후); 버전별 expected.csv; 확인 값이 포함된 단계
실행 후실행 검토: 통과한 항목, check --expect 테이블 항목 / 예상값 / 모델값 / 판정, 번호가 매겨진 수정 사항, 다음 번에 보낼 내용
모델 작성.inp 파일 및 inp-check 보고서
계산기 코드버전별 별도의 일반 텍스트 파일로 Fortran (templates/fortran-calculator.txt), fortran-check로 검증됨
자동화.bkp, .rep, .cpm, .inp 및 automation-log.json이 포함된 새 폴더; 스위프의 경우 CSV
문제 해결근본 원인, 번호가 매겨진 수정 단계, 무해한 메시지

도움말 잘 사용하기

  • GUI에서 사용하는 단어로 검색하세요 (폼 및 시트 이름: "Calculator Input Sequence Sheet", "Secant bracket", "Setup Specifications Diagnostics"); 그런 다음 스니펫만 읽지 말고 주제를 읽으세요.
  • 사용한 내용을 인용하세요: 주제 제목(및 책). 도움말이 해당 내용을 다루지 않으면 그렇게 말하세요.
  • 도움말 텍스트는 AspenTech의 저작권이 있는 콘텐츠입니다: 짧은 구절만 인용하고, 주제나 인덱스를 사용자 컴퓨터를 벗어나는 파일에 절대 복사하지 마세요.

사용자 파일 읽기

  • 파서를 사용하여 파일을 직접 읽으세요. 사용자에게 테이블을 붙여넣도록 요청하지 마세요. .his와 .rep는 깁니다. 요약에는 ID, 숫자 및 컨텍스트가 유지됩니다.
  • .his는 메시지 ID, 계산 순서, 루프 히스토리, 입력 에코 및 Fortran을 제공합니다. .cpm에는 ID 없이 동일한 메시지가 있습니다. .rep에는 결과 및 스트림 테이블이 있습니다. .bkp에는 입력 구조 및 실행 상태가 있습니다.
  • 값은 단위와 함께 인용하고 출처(파일, 블록, 섹션)를 명시하세요.

개인정보 보호 및 데이터 규칙

스크립트는 아무것도 업로드하지 않으며 네트워크가 필요하지 않습니다. 사용자의 파일을 있는 그대로 읽고 사용자가 요청한 곳에만 씁니다. 사용 중인 에이전트는 읽은 내용을 계정 약관에 따라 해당 모델 제공업체로 보내므로, 기밀 파일이 중요할 때는 대화에 포함시키지 마세요. 모델, 결과 또는 노트의 어떤 내용도 이 스킬에 의해 커밋되거나 게시되지 않습니다. 예제는 사용자 자체 설치의 AspenTech 예제 라이브러리 또는 공개 라이선스 모델에서 제공됩니다.

  • 라이선스 라인("LICENSED TO ..."), Windows 사용자 또는 컴퓨터 이름, 사용자 파일 내에서 발견된 실행 폴더를 절대 반복하지 마세요. 요약에는 이러한 정보가 포함되지 않습니다. 원시 보기에서 다시 복사하지 마세요. .def 또는 .scr 파일을 절대 읽지 마세요.
  • 사용자의 모델, 결과 및 노트는 커밋, 이슈, 공개 장소 또는 테스트 픽스처에 절대 포함되지 않습니다. 사용자의 파일 경로는 사용자에게 표시될 수 있지만, 공유되는 어떤 것에도 기록되지 않습니다.
  • 요청하지 않는 한 사용자의 폴더에 쓰지 마세요. 생성된 파일은 사용자가 지정한 위치에 넣으세요. 빌드 모드에서 빌드 가이드, STATUS.md, 데이터 카드 및 입력 파일은 사용자가 동의한 후 사용자가 지정한 모델 폴더에 들어갑니다.

답변 방법

references/answer-style.md를 따르세요: 판정을 먼저 제시; "새 버전 저장"으로 시작하는 번호가 매겨진 단계; 굵은 글씨로 된 클릭 경로; 단위가 포함된 정확한 값; 명확하지 않은 선택에 대한 이유; 붙여넣을 준비가 된 코드; 예상 결과 표; "문제가 있으면"; 하나의 다음 단계. 화학 공학 지식을 가정하고, Aspen 특유의 동작을 설명하며, 중요하지 않은 단계를 생략하지 말고, 간결하게 유지하세요.

참고 자료

파일내용
references/answer-style.md방법, 수정 및 검토 답변을 위한 답변 형식
references/messages.md메시지 ID 및 텍스트: 의미, 일반적인 원인, 수정 방법, 무해 여부
references/calculators.md계산기/설계 사양/파라미터 규칙, Fortran 규칙, Aspen 외부 코드 테스트
references/workflows.md문제 해결, 검토, 버전 관리, 검증, 수렴, 물성 방법, 초기값
references/gui-navigation.mdV12-V15 리본 및 탐색 창 경로
references/file-types.mdAspen 파일 유형, 내보내기, 파일 계약 및 실행 스탬프, 엔진 버전, 임시 파일, 개인정보 보호
references/help-map.md도움말 책과 해당 범위
references/build-mode.md사용자와 모델 구축: 프레이밍, 데이터 카드, 검증 모델, 버전 및 게이트, 실행 검토, STATUS.md
references/input-language.md.inp 파일 작성 및 확인: 규칙, 검증된 단락, 주기
references/examples.md예제 라이브러리 인덱스: 설정, 검색, 읽기 및 예제 사용
references/automation.mdCOM 자동화: 사용 시기, com-* 명령어, 안전 규칙, 노드 경로, 단위, 상태 플래그

관련 스킬