There are a few possibilities as to why this could be happening.
1. The flag -Dcom.wily.introscope.agent.agentName has been added to the WAS startup script. Any -Dcom.wily property will supersede any setting in the IntroscopeAgent.profile
2. It is possible that the flag has been added after the JVM arguments and the property in the Agent profile 'introscope.agent.agentNameSystemPropertyKey' is not set. In this case, either set the -Dcom.wily.introscope.agent.agentName in the JVM arguments or set introscope.agent.agentNameSystemPropertyKey=<myagentname> in the Agent profile.
3. If you use certain versions of WebLogic or WebSphere, the agent name can be automatically obtained from the application server using automatic agent naming functionality. However if not set up properly, then the name will not be passed to the Agent, thus having the Agent show as "Unknown Agent". In this case you would use the below property in IntroscopeAgent.profile and set your Agent name.