PageSourceSearch

https://docs.penfield.ai/assets/js/62d9d7d9.a280ca6d.js

js penfield.ai collected 2026-10-03 19:56:03 UTC 11,063 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[4776],{763:(n,e,t)=>{t.r(e),t.d(e,{assets:()=>l,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>c});var i=t(4848),s=t(8453);const o={sidebar_position:1,id:"installation",slug:"/interfaces/windows-agent/installation",title:"Installation",description:"Installation of windows agent"},r="Overview",a={id:"interfaces/windows-agent/installation",title:"Installation",description:"Installation of windows agent",source:"@site/docs/07-interfaces/02-windows-agent/01-installation.md",sourceDirName:"07-interfaces/02-windows-agent",slug:"/interfaces/windows-agent/installation",permalink:"/docs/interfaces/windows-agent/installation",draft:!1,unlisted:!1,tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1,id:"installation",slug:"/interfaces/windows-agent/installation",title:"Installation",description:"Installation of windows agent"},sidebar:"tutorialSidebar",previous:{title:"MECM Installation",permalink:"/docs/interfaces/pathfinder/mecm-installation"},next:{title:"Configuration",permalink:"/docs/interfaces/windows-agent/configuration"}},l={},c=[{value:"<strong>System Requirements</strong>",id:"system-requirements",level:2},{value:"<strong>Setup Instructions</strong>",id:"setup-instructions",level:2},{value:"<strong>Step 1: Install Miniconda</strong>",id:"step-1-install-miniconda",level:3},{value:"<strong>Step 2: Download the code from the Gitlab repository</strong>",id:"step-2-download-the-code-from-the-gitlab-repository",level:3},{value:"<strong>Step 3: Create a Conda Environment</strong>",id:"step-3-create-a-conda-environment",level:3},{value:"<strong>Step 4: Activate and Verify Setup</strong>",id:"step-4-activate-and-verify-setup",level:3},{value:"<strong>Running the Windows sensor Application</strong>",id:"running-the-windows-sensor-application",level:2},{value:"<strong>Step 1: Activate the Conda Environment</strong>",id:"step-1-activate-the-conda-environment",level:3},{value:"<strong>Step 2: Navigate to the Application Directory</strong>",id:"step-2-navigate-to-the-application-directory",level:3},{value:"<strong>Step 3: Run the Application</strong>",id:"step-3-run-the-application",level:3},{value:"<strong>Step 5: Stopping the Application</strong>",id:"step-5-stopping-the-application",level:3}];function d(n){const e={a:"a",admonition:"admonition",br:"br",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",hr:"hr",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,s.R)(),...n.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.header,{children:(0,i.jsx)(e.h1,{id:"overview",children:"Overview"})}),"\n",(0,i.jsx)(e.admonition,{title:"Note",type:"tip",children:(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Self-Hosted Deployment Note:"})," If your organization has deployed Penfield in a self-hosted model (where the Penfield application is hosted on your corporate infrastructure), the Windows Interaction Sensor will communicate directly with your self-hosted Penfield backend, not with Penfield's hosted backend. The communication endpoint is determined by where your Penfield application is deployed."]})}),"\n",(0,i.jsx)(e.p,{children:"The Windows Interaction Sensor application captures and processes user interactions, including data collection and task management. This guide will walk you through the steps to set up, configure, and run the application."}),"\n",(0,i.jsx)(e.hr,{}),"\n",(0,i.jsx)(e.h2,{id:"system-requirements",children:(0,i.jsx)(e.strong,{children:"System Requirements"})}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"OS"}),": Windows 10 or higher"]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Python Version"}),": 3.12.x"]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Conda"}),": For managing Python environments"]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Git"})," (optional): For cloning the repository"]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Windows Steps Recorder (PSR.exe)"}),": Required for capturing interactions"]}),"\n"]}),"\n",(0,i.jsx)(e.hr,{}),"\n",(0,i.jsx)(e.h2,{id:"setup-instructions",children:(0,i.jsx)(e.strong,{children:"Setup Instru
1ctions"})}),"\n",(0,i.jsx)(e.h3,{id:"step-1-install-miniconda",children:(0,i.jsx)(e.strong,{children:"Step 1: Install Miniconda"})}),"\n",(0,i.jsxs)(e.ol,{children:["\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:["If you don\u2019t have ",(0,i.jsx)(e.strong,{children:"Miniconda"})," installed, download and install it from:",(0,i.jsx)(e.br,{}),"\n",(0,i.jsx)(e.strong,{children:"Miniconda"}),": ",(0,i.jsx)(e.a,{href:"https://www.anaconda.com/docs/getting-started/miniconda/install#quickstart-install-instructions",children:"https://www.anaconda.com/docs/getting-started/miniconda/install#quickstart-install-instructions"})]}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsx)(e.p,{children:"Open Anaconda Prompt and run this command to add Conda to your PATH:"}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"conda init cmd.exe\n"})}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(e.h3,{id:"step-2-download-the-code-from-the-gitlab-repository",children:(0,i.jsx)(e.strong,{children:"Step 2: Download the code from the Gitlab repository"})}),"\n",(0,i.jsxs)(e.ol,{children:["\n",(0,i.jsx)(e.li,{children:"Download the script from the Penfield Gitlab repository or Contact Penfield for the code."}),"\n"]}),"\n",(0,i.jsx)(e.h3,{id:"step-3-create-a-conda-environment",children:(0,i.jsx)(e.strong,{children:"Step 3: Create a Conda Environment"})}),"\n",(0,i.jsxs)(e.ol,{children:["\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Navigate to the Application Root"}),":",(0,i.jsx)(e.br,{}),"\n","Before setting up the project, make sure you're in the directory where the ",(0,i.jsx)(e.code,{children:"environment.yml"})," is located (the project root). Use the ",(0,i.jsx)(e.code,{children:"cd"})," command to navigate there:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"cd path/to/windows-interaction-sensor\n"})}),"\n",(0,i.jsxs)(e.p,{children:["Replace ",(0,i.jsx)(e.code,{children:"path/to/windows-interaction-sensor"})," with the actual path to your project folder.\nGo to the ",(0,i.jsx)(e.code,{children:"app"})," directory."]}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Open the Anaconda PowerShell Prompt"}),":\nOpen the Prompt by going to start menu and search for Anaconda PowerShell Prompt and run next steps in that prompt."]}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Create the Conda Environment"}),":",(0,i.jsx)(e.br,{}),"\n","Create the Conda environment using the ",(0,i.jsx)(e.code,{children:"environment.yml"})," file:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"conda env create -f environment.yml\n"})}),"\n",(0,i.jsx)(e.p,{children:"It will ask you to accept the Terms of Service, So please accept it."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(e.h3,{id:"step-4-activate-and-verify-setup",children:(0,i.jsx)(e.strong,{children:"Step 4: Activate and Verify Setup"})}),"\n",(0,i.jsxs)(e.ol,{children:["\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Activate the Conda Environment"}),":",(0,i.jsx)(e.br,{}),"\n","After creating the Conda environment, activate it to ensure all the installed dependencies are available:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"conda activate win_sensor\n"})}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["\n",(0,i.jsxs)(e.p,{children:[(0,i.jsx)(e.strong,{children:"Verify Installation"}),":",(0,i.jsx)(e.br,{}),"\n","Once the environment is activated, you can verify that everything is installed properly by listing the installed packages:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"conda list\n"})}),"\n",(0,i.jsxs)(e.p,{children:["This will display all installed dependencies within the ",(0,i.jsx)(e.code,{children:"win_sensor"})," environment."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(e.hr,{}),"\n",(0,i.jsx)(e.h2,{id:"running-the-windows-sensor-application",children:(0,i.jsx)(e.strong,{children:"Running the Windows sensor Application"})}),"\n",(0,i.jsx)(e.p,{children:"Once the setup is complete, you can run the application using the following steps:"}),"\n",(0,i.jsx)(e.h3,{id:"step-1-activate-the-conda-environment",children:(0,i.jsx)(e.strong,{children:"Step 1: Activate the Conda Environment"})}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:" conda activate win_sensor\n"})}),"\n",(0,i.jsx)(e.h3,{id:"step-2-navigate-to-the-application-directory",children:(0,i.jsx)(e.strong,{children:"Step 2: Navigate to the Application Directory"})}),"\n",(0,i.jsxs)(e.p,{children:["You need to navigate to the ",(0,i.jsx)(e.code,{children:"app"})," directory where the main application script is located. If you're in the root project directory, run the following command:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"cd <path/to/windows-interaction-sensor>gpl/app\n"})}),"\n",(0,i.jsxs)(e.p,{children:["Replace ",(0,i.jsx)(e.code,{children:"path/to/windows-interaction-sensor"})," with the actual path to your project folder."]}
1),"\n",(0,i.jsx)(e.h3,{id:"step-3-run-the-application",children:(0,i.jsx)(e.strong,{children:"Step 3: Run the Application"})}),"\n",(0,i.jsxs)(e.p,{children:["Once inside the ",(0,i.jsx)(e.code,{children:"app"})," directory, run the following command to start the application:"]}),"\n",(0,i.jsx)(e.pre,{children:(0,i.jsx)(e.code,{className:"language-bash",children:"python main.py\n"})}),"\n",(0,i.jsx)(e.p,{children:"This will start the application and begin monitoring user interactions."}),"\n",(0,i.jsx)(e.h3,{id:"step-5-stopping-the-application",children:(0,i.jsx)(e.strong,{children:"Step 5: Stopping the Application"})}),"\n",(0,i.jsxs)(e.p,{children:["To stop the application, press ",(0,i.jsx)(e.code,{children:"Ctrl + C"})," in the terminal window where the application is running  or ",(0,i.jsx)(e.code,{children:"Esc"})," anywhere.",(0,i.jsx)(e.br,{}),"\n","This will stop any ongoing tasks and end the user session."]}),"\n",(0,i.jsx)(e.hr,{})]})}function h(n={}){const{wrapper:e}={...(0,s.R)(),...n.components};return e?(0,i.jsx)(e,{...n,children:(0,i.jsx)(d,{...n})}):d(n)}},8453:(n,e,t)=>{t.d(e,{R:()=>r,x:()=>a});var i=t(6540);const s={},o=i.createContext(s);function r(n){const e=i.useContext(o);return i.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function a(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(s):n.components||s:r(n.components),i.createElement(o.Provider,{value:e},n.children)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.